home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / Movies.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  167.4 KB  |  6,369 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Movies.a
  3. ;
  4. ;    Contains:    QuickTime Interfaces.
  5. ;
  6. ;    Version:    Technology:    QuickTime 2.5
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1990-1997 by Apple Computer, Inc., all rights reserved
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__MOVIES__') = 'UNDEFINED' THEN
  19. __MOVIES__ SET 1
  20.  
  21.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  22.     include 'Quickdraw.a'
  23.     ENDIF
  24.     IF &TYPE('__ALIASES__') = 'UNDEFINED' THEN
  25.     include 'Aliases.a'
  26.     ENDIF
  27.     IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN
  28.     include 'Events.a'
  29.     ENDIF
  30.     IF &TYPE('__MENUS__') = 'UNDEFINED' THEN
  31.     include 'Menus.a'
  32.     ENDIF
  33.     IF &TYPE('__COMPONENTS__') = 'UNDEFINED' THEN
  34.     include 'Components.a'
  35.     ENDIF
  36.     IF &TYPE('__IMAGECOMPRESSION__') = 'UNDEFINED' THEN
  37.     include 'ImageCompression.a'
  38.     ENDIF
  39.  
  40.  
  41. ;   "kFix1" is defined in FixMath as "fixed1"  
  42. ;  error codes are in Errors.[haa] 
  43. ;  gestalt codes are in Gestalt.[hpa] 
  44.  
  45. MovieFileType                    EQU        'MooV'
  46.  
  47. MediaHandlerType                EQU        'mhlr'
  48. DataHandlerType                    EQU        'dhlr'
  49.  
  50. VideoMediaType                    EQU        'vide'
  51. SoundMediaType                    EQU        'soun'
  52. TextMediaType                    EQU        'text'
  53. BaseMediaType                    EQU        'gnrc'
  54. MPEGMediaType                    EQU        'MPEG'
  55. MusicMediaType                    EQU        'musi'
  56. TimeCodeMediaType                EQU        'tmcd'
  57. SpriteMediaType                    EQU        'sprt'
  58. TweenMediaType                    EQU        'twen'
  59. ThreeDeeMediaType                EQU        'qd3d'
  60. HandleDataHandlerSubType        EQU        'hndl'
  61. ResourceDataHandlerSubType        EQU        'rsrc'
  62.  
  63. VisualMediaCharacteristic        EQU        'eyes'
  64. AudioMediaCharacteristic        EQU        'ears'
  65. kCharacteristicCanSendVideo        EQU        'vsnd'
  66.  
  67. DoTheRightThing                    EQU        0
  68.  
  69. MovieRecord                RECORD 0
  70. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  71. sizeof                     EQU *                    ; size:   $4 (4)
  72.                         ENDR
  73. ; typedef struct MovieRecord *            Movie
  74.  
  75. TrackRecord                RECORD 0
  76. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  77. sizeof                     EQU *                    ; size:   $4 (4)
  78.                         ENDR
  79. ; typedef struct TrackRecord *            Track
  80.  
  81. MediaRecord                RECORD 0
  82. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  83. sizeof                     EQU *                    ; size:   $4 (4)
  84.                         ENDR
  85. ; typedef struct MediaRecord *            Media
  86.  
  87. UserDataRecord            RECORD 0
  88. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  89. sizeof                     EQU *                    ; size:   $4 (4)
  90.                         ENDR
  91. ; typedef struct UserDataRecord *        UserData
  92.  
  93. TrackEditStateRecord    RECORD 0
  94. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  95. sizeof                     EQU *                    ; size:   $4 (4)
  96.                         ENDR
  97. ; typedef struct TrackEditStateRecord *    TrackEditState
  98.  
  99. MovieEditStateRecord    RECORD 0
  100. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  101. sizeof                     EQU *                    ; size:   $4 (4)
  102.                         ENDR
  103. ; typedef struct MovieEditStateRecord *    MovieEditState
  104.  
  105. SpriteWorldRecord        RECORD 0
  106. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  107. sizeof                     EQU *                    ; size:   $4 (4)
  108.                         ENDR
  109. ; typedef struct SpriteWorldRecord *    SpriteWorld
  110.  
  111. SpriteRecord            RECORD 0
  112. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  113. sizeof                     EQU *                    ; size:   $4 (4)
  114.                         ENDR
  115. ; typedef struct SpriteRecord *            Sprite
  116.  
  117. SampleDescription        RECORD 0
  118. descSize                 ds.l    1                ; offset: $0 (0)
  119. dataFormat                 ds.l    1                ; offset: $4 (4)
  120. resvd1                     ds.l    1                ; offset: $8 (8)
  121. resvd2                     ds.w    1                ; offset: $C (12)
  122. dataRefIndex             ds.w    1                ; offset: $E (14)
  123. sizeof                     EQU *                    ; size:   $10 (16)
  124.                         ENDR
  125. ; typedef struct SampleDescription *    SampleDescriptionPtr
  126.  
  127. ; typedef SampleDescriptionPtr *        SampleDescriptionHandle
  128.  
  129. ; typedef Handle                         QTAtomContainer
  130.  
  131. ; typedef long                             QTAtom
  132.  
  133. ; typedef long                             QTAtomType
  134.  
  135. ; typedef long                             QTAtomID
  136.  
  137.  
  138.  
  139. SoundDescription        RECORD 0
  140. descSize                 ds.l    1                ; offset: $0 (0)        ;  total size of SoundDescription including extra data 
  141. dataFormat                 ds.l    1                ; offset: $4 (4)        ;   
  142. resvd1                     ds.l    1                ; offset: $8 (8)        ;  reserved for apple use 
  143. resvd2                     ds.w    1                ; offset: $C (12)
  144. dataRefIndex             ds.w    1                ; offset: $E (14)
  145. version                     ds.w    1                ; offset: $10 (16)        ;  which version is this data 
  146. revlevel                 ds.w    1                ; offset: $12 (18)        ;  what version of that codec did this 
  147. vendor                     ds.l    1                ; offset: $14 (20)        ;  whose  codec compressed this data 
  148. numChannels                 ds.w    1                ; offset: $18 (24)        ;  number of channels of sound 
  149. sampleSize                 ds.w    1                ; offset: $1A (26)        ;  number of bits per sample 
  150. compressionID             ds.w    1                ; offset: $1C (28)        ;  sound compression used, 0 if none 
  151. packetSize                 ds.w    1                ; offset: $1E (30)        ;  packet size for compression, 0 if no compression 
  152. sampleRate                 ds.l    1                ; offset: $20 (32)        ;  sample rate sound is captured at 
  153. sizeof                     EQU *                    ; size:   $24 (36)
  154.                         ENDR
  155. ; typedef struct SoundDescription *        SoundDescriptionPtr
  156.  
  157. ; typedef SoundDescriptionPtr *            SoundDescriptionHandle
  158.  
  159. TextDescription            RECORD 0
  160. descSize                 ds.l    1                ; offset: $0 (0)        ;  Total size of TextDescription
  161. dataFormat                 ds.l    1                ; offset: $4 (4)        ;  'text'
  162. resvd1                     ds.l    1                ; offset: $8 (8)
  163. resvd2                     ds.w    1                ; offset: $C (12)
  164. dataRefIndex             ds.w    1                ; offset: $E (14)
  165. displayFlags             ds.l    1                ; offset: $10 (16)        ;  see enum below for flag values
  166. textJustification         ds.l    1                ; offset: $14 (20)        ;  Can be: teCenter,teFlush -Default,-Right,-Left
  167. bgColor                     ds        RGBColor        ; offset: $18 (24)        ;  Background color
  168. defaultTextBox             ds        Rect            ; offset: $1E (30)        ;  Location to place the text within the track bounds
  169. defaultStyle             ds        ScrpSTElement    ; offset: $26 (38)        ;  Default style (struct defined in TextEdit.h)
  170. defaultFontName             ds.b    1                ; offset: $3A (58) <-- really an array of length one ;  Font Name (pascal string - struct extended to fit) 
  171.                          ORG 60
  172. sizeof                     EQU *                    ; size:   $3C (60)
  173.                         ENDR
  174. ; typedef struct TextDescription *        TextDescriptionPtr
  175.  
  176. ; typedef TextDescriptionPtr *            TextDescriptionHandle
  177.  
  178. ThreeDeeDescription        RECORD 0
  179. descSize                 ds.l    1                ; offset: $0 (0)        ;  total size of ThreeDeeDescription including extra data 
  180. dataFormat                 ds.l    1                ; offset: $4 (4)        ;   
  181. resvd1                     ds.l    1                ; offset: $8 (8)        ;  reserved for apple use 
  182. resvd2                     ds.w    1                ; offset: $C (12)
  183. dataRefIndex             ds.w    1                ; offset: $E (14)
  184. version                     ds.l    1                ; offset: $10 (16)        ;  which version is this data 
  185. rendererType             ds.l    1                ; offset: $14 (20)        ;  which renderer to use, 0 for default 
  186. sizeof                     EQU *                    ; size:   $18 (24)
  187.                         ENDR
  188. ; typedef struct ThreeDeeDescription *    ThreeDeeDescriptionPtr
  189.  
  190. ; typedef ThreeDeeDescriptionPtr *        ThreeDeeDescriptionHandle
  191.  
  192. DataReferenceRecord        RECORD 0
  193. dataRefType                 ds.l    1                ; offset: $0 (0)
  194. dataRef                     ds.l    1                ; offset: $4 (4)
  195. sizeof                     EQU *                    ; size:   $8 (8)
  196.                         ENDR
  197. ; typedef struct DataReferenceRecord *    DataReferencePtr
  198.  
  199. ; --------------------------
  200. ;  Music Sample Description
  201. ;--------------------------
  202.  
  203. MusicDescription        RECORD 0
  204. descSize                 ds.l    1                ; offset: $0 (0)
  205. dataFormat                 ds.l    1                ; offset: $4 (4)        ;  'musi' 
  206. resvd1                     ds.l    1                ; offset: $8 (8)
  207. resvd2                     ds.w    1                ; offset: $C (12)
  208. dataRefIndex             ds.w    1                ; offset: $E (14)
  209. musicFlags                 ds.l    1                ; offset: $10 (16)
  210. headerData                 ds.l    1                ; offset: $14 (20) <-- really an array of length one ;  variable size! 
  211. sizeof                     EQU *                    ; size:   $18 (24)
  212.                         ENDR
  213. ; typedef struct MusicDescription *        MusicDescriptionPtr
  214.  
  215. ; typedef MusicDescriptionPtr *            MusicDescriptionHandle
  216.  
  217.  
  218. kMusicFlagDontPlay2Soft            EQU        $00000001
  219.  
  220.  
  221. dfDontDisplay                    EQU        $01                    ; Don't display the text
  222. dfDontAutoScale                    EQU        $02                    ; Don't scale text as track bounds grows or shrinks
  223. dfClipToTextBox                    EQU        $04                    ; Clip update to the textbox
  224. dfUseMovieBGColor                EQU        $08                    ; Set text background to movie's background color
  225. dfShrinkTextBoxToFit            EQU        $10                    ; Compute minimum box to fit the sample
  226. dfScrollIn                        EQU        $20                    ; Scroll text in until last of text is in view 
  227. dfScrollOut                        EQU        $40                    ; Scroll text out until last of text is gone (if both set, scroll in then out)
  228. dfHorizScroll                    EQU        $80                    ; Scroll text horizontally (otherwise it's vertical)
  229. dfReverseScroll                    EQU        $0100                ; vert: scroll down rather than up; horiz: scroll backwards (justfication dependent)
  230. dfContinuousScroll                EQU        $0200                ; new samples cause previous samples to scroll out 
  231. dfFlowHoriz                        EQU        $0400                ; horiz scroll text flows in textbox rather than extend to right 
  232. dfContinuousKaraoke                EQU        $0800                ; ignore begin offset, hilite everything up to the end offset(karaoke)
  233. dfDropShadow                    EQU        $1000                ; display text with a drop shadow 
  234. dfAntiAlias                        EQU        $2000                ; attempt to display text anti aliased
  235. dfKeyedText                        EQU        $4000                ; key the text over background
  236. dfInverseHilite                    EQU        $8000                ; Use inverse hiliting rather than using hilite color
  237. dfTextColorHilite                EQU        $00010000            ; changes text color in place of hiliting. 
  238.  
  239. searchTextDontGoToFoundTime        EQU        $00010000
  240. searchTextDontHiliteFoundText    EQU        $00020000
  241. searchTextOneTrackOnly            EQU        $00040000
  242. searchTextEnabledTracksOnly        EQU        $00080000
  243.  
  244. k3DMediaRendererEntry            EQU        'rend'
  245. k3DMediaRendererName            EQU        'name'
  246. k3DMediaRendererCode            EQU        'rcod'
  247. ;  progress messages 
  248.  
  249. movieProgressOpen                EQU        0
  250. movieProgressUpdatePercent        EQU        1
  251. movieProgressClose                EQU        2
  252. ;  progress operations 
  253.  
  254. progressOpFlatten                EQU        1
  255. progressOpInsertTrackSegment    EQU        2
  256. progressOpInsertMovieSegment    EQU        3
  257. progressOpPaste                    EQU        4
  258. progressOpAddMovieSelection        EQU        5
  259. progressOpCopy                    EQU        6
  260. progressOpCut                    EQU        7
  261. progressOpLoadMovieIntoRam        EQU        8
  262. progressOpLoadTrackIntoRam        EQU        9
  263. progressOpLoadMediaIntoRam        EQU        10
  264. progressOpImportMovie            EQU        11
  265. progressOpExportMovie            EQU        12
  266.  
  267. mediaQualityDraft                EQU        $0000
  268. mediaQualityNormal                EQU        $0040
  269. mediaQualityBetter                EQU        $0080
  270. mediaQualityBest                EQU        $00C0
  271. ; typedef ComponentInstance             MediaHandler
  272.  
  273. ; typedef ComponentInstance             DataHandler
  274.  
  275. ; typedef Component                     MediaHandlerComponent
  276.  
  277. ; typedef Component                     DataHandlerComponent
  278.  
  279. ; typedef ComponentResult                 HandlerError
  280.  
  281. ;  TimeBase equates 
  282. ; typedef long                             TimeValue
  283.  
  284. ; typedef long                             TimeScale
  285.  
  286. CompTimeValue            RECORD 0
  287. f                         ds        wide
  288. sizeof                     EQU *                    ; size:   $8 (8)
  289.                         ENDR
  290.  
  291.  
  292.  
  293. loopTimeBase                    EQU        1
  294. palindromeLoopTimeBase            EQU        2
  295. maintainTimeBaseZero            EQU        4
  296. ; typedef unsigned long                 TimeBaseFlags
  297.  
  298. TimeBaseRecord            RECORD 0
  299. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  300. sizeof                     EQU *                    ; size:   $4 (4)
  301.                         ENDR
  302. ; typedef struct TimeBaseRecord *        TimeBase
  303.  
  304. CallBackRecord            RECORD 0
  305. data                     ds.l    1                ; offset: $0 (0) <-- really an array of length one
  306. sizeof                     EQU *                    ; size:   $4 (4)
  307.                         ENDR
  308. ; typedef struct CallBackRecord *        QTCallBack
  309.  
  310. TimeRecord                RECORD 0
  311. value                     ds        CompTimeValue    ; offset: $0 (0)        ;  units 
  312. scale                     ds.l    1                ; offset: $8 (8)        ;  units per second 
  313. base                     ds.l    1                ; offset: $C (12)
  314. sizeof                     EQU *                    ; size:   $10 (16)
  315.                         ENDR
  316. ;  CallBack equates 
  317.  
  318. triggerTimeFwd                    EQU        $0001                ; when curTime exceeds triggerTime going forward 
  319. triggerTimeBwd                    EQU        $0002                ; when curTime exceeds triggerTime going backwards 
  320. triggerTimeEither                EQU        $0003                ; when curTime exceeds triggerTime going either direction 
  321. triggerRateLT                    EQU        $0004                ; when rate changes to less than trigger value 
  322. triggerRateGT                    EQU        $0008                ; when rate changes to greater than trigger value 
  323. triggerRateEqual                EQU        $0010                ; when rate changes to equal trigger value 
  324. triggerRateLTE                    EQU        $0014
  325. triggerRateGTE                    EQU        $0018
  326. triggerRateNotEqual                EQU        $001C
  327. triggerRateChange                EQU        0
  328. triggerAtStart                    EQU        $0001
  329. triggerAtStop                    EQU        $0002
  330. ; typedef unsigned short                 QTCallBackFlags
  331.  
  332.  
  333. timeBaseBeforeStartTime            EQU        1
  334. timeBaseAfterStopTime            EQU        2
  335. ; typedef unsigned long                 TimeBaseStatus
  336.  
  337.  
  338. callBackAtTime                    EQU        1
  339. callBackAtRate                    EQU        2
  340. callBackAtTimeJump                EQU        3
  341. callBackAtExtremes                EQU        4
  342. callBackAtInterrupt                EQU        $8000
  343. callBackAtDeferredTask            EQU        $4000
  344. ; typedef unsigned short                 QTCallBackType
  345.  
  346.  
  347. qtcbNeedsRateChanges            EQU        1                    ; wants to know about rate changes 
  348. qtcbNeedsTimeChanges            EQU        2                    ; wants to know about time changes 
  349. qtcbNeedsStartStopChanges        EQU        4                    ; wants to know when TimeBase start/stop is changed
  350. QTCallBackHeader        RECORD 0
  351. callBackFlags             ds.l    1                ; offset: $0 (0)
  352. reserved1                 ds.l    1                ; offset: $4 (4)
  353. qtPrivate                 ds.b    40                ; offset: $8 (8)
  354. sizeof                     EQU *                    ; size:   $30 (48)
  355.                         ENDR
  356. QTSyncTaskRecord        RECORD 0
  357. qLink                     ds.l    1                ; offset: $0 (0)
  358. proc                     ds.l    1                ; offset: $4 (4)
  359. sizeof                     EQU *                    ; size:   $8 (8)
  360.                         ENDR
  361. ; typedef struct QTSyncTaskRecord *        QTSyncTaskPtr
  362.  
  363.  
  364. keepInRam                        EQU        $01                    ; load and make non-purgable
  365. unkeepInRam                        EQU        $02                    ; mark as purgable
  366. flushFromRam                    EQU        $04                    ; empty those handles
  367. loadForwardTrackEdits            EQU        $08                    ;    load track edits into ram for playing forward
  368. loadBackwardTrackEdits            EQU        $10                    ;    load track edits into ram for playing in reverse
  369.  
  370. newMovieActive                    EQU        $01
  371. newMovieDontResolveDataRefs        EQU        $02
  372. newMovieDontAskUnresolvedDataRefs EQU    $04
  373. newMovieDontAutoAlternates        EQU        $08
  374. newMovieDontUpdateForeBackPointers EQU    $10
  375. ;  track usage bits 
  376.  
  377. trackUsageInMovie                EQU        $02
  378. trackUsageInPreview                EQU        $04
  379. trackUsageInPoster                EQU        $08
  380. ;  Add/GetMediaSample flags 
  381.  
  382. mediaSampleNotSync                EQU        $01                    ; sample is not a sync sample (eg. is frame differenced 
  383. mediaSampleShadowSync            EQU        $02                    ; sample is a shadow sync 
  384.  
  385. pasteInParallel                    EQU        $01
  386. showUserSettingsDialog            EQU        $02
  387. movieToFileOnlyExport            EQU        $04
  388. movieFileSpecValid                EQU        $08
  389.  
  390. nextTimeMediaSample                EQU        $01
  391. nextTimeMediaEdit                EQU        $02
  392. nextTimeTrackEdit                EQU        $04
  393. nextTimeSyncSample                EQU        $08
  394. nextTimeStep                    EQU        $10
  395. nextTimeEdgeOK                    EQU        $4000
  396. nextTimeIgnoreActiveSegment        EQU        $8000
  397. ; typedef unsigned short                 nextTimeFlagsEnum
  398.  
  399.  
  400. createMovieFileDeleteCurFile    EQU        $80000000
  401. createMovieFileDontCreateMovie    EQU        $40000000
  402. createMovieFileDontOpenFile        EQU        $20000000
  403. ; typedef unsigned long                 createMovieFileFlagsEnum
  404.  
  405.  
  406. flattenAddMovieToDataFork        EQU        $00000001
  407. flattenActiveTracksOnly            EQU        $00000004
  408. flattenDontInterleaveFlatten    EQU        $00000008
  409. flattenFSSpecPtrIsDataRefRecordPtr EQU    $00000010
  410. ; typedef unsigned long                 movieFlattenFlagsEnum
  411.  
  412.  
  413. movieInDataForkResID            EQU        -1                    ; magic res ID 
  414.  
  415. mcTopLeftMovie                    EQU        $01                    ; usually centered 
  416. mcScaleMovieToFit                EQU        $02                    ; usually only scales down 
  417. mcWithBadge                        EQU        $04                    ; give me a badge 
  418. mcNotVisible                    EQU        $08                    ; don't show controller 
  419. mcWithFrame                        EQU        $10                    ; gimme a frame 
  420.  
  421. movieScrapDontZeroScrap            EQU        $01
  422. movieScrapOnlyPutMovie            EQU        $02
  423.  
  424. dataRefSelfReference            EQU        $01
  425. dataRefWasNotResolved            EQU        $02
  426. ; typedef unsigned long                 dataRefAttributesFlags
  427.  
  428.  
  429. hintsScrubMode                    EQU        $01                    ; mask == && (if flags == scrub on, flags != scrub off) 
  430. hintsLoop                        EQU        $02
  431. hintsDontPurge                    EQU        $04
  432. hintsUseScreenBuffer            EQU        $20
  433. hintsAllowInterlace                EQU        $40
  434. hintsUseSoundInterp                EQU        $80
  435. hintsHighQuality                EQU        $0100                ; slooooow 
  436. hintsPalindrome                    EQU        $0200
  437. hintsInactive                    EQU        $0800
  438. ; typedef unsigned long                 playHintsEnum
  439.  
  440.  
  441. mediaHandlerFlagBaseClient        EQU        1
  442. ; typedef unsigned long                 mediaHandlerFlagsEnum
  443.  
  444.  
  445. movieTrackMediaType                EQU        $01
  446. movieTrackCharacteristic        EQU        $02
  447. movieTrackEnabledOnly            EQU        $04
  448. SampleReferenceRecord    RECORD 0
  449. dataOffset                 ds.l    1                ; offset: $0 (0)
  450. dataSize                 ds.l    1                ; offset: $4 (4)
  451. durationPerSample         ds.l    1                ; offset: $8 (8)
  452. numberOfSamples             ds.l    1                ; offset: $C (12)
  453. sampleFlags                 ds.w    1                ; offset: $10 (16)
  454. sizeof                     EQU *                    ; size:   $12 (18)
  455.                         ENDR
  456. ; typedef struct SampleReferenceRecord * SampleReferencePtr
  457.  
  458.  
  459. ; *************************
  460. ;* Initialization Routines 
  461. ;*************************
  462.  
  463. ;
  464. ; pascal OSErr EnterMovies(void )
  465. ;
  466.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  467.         Macro
  468.         _EnterMovies
  469.             moveq               #1,D0
  470.             dc.w                $AAAA
  471.         EndM
  472.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  473.         IMPORT_CFM_FUNCTION EnterMovies
  474.     ENDIF
  475.  
  476. ;
  477. ; pascal void ExitMovies(void )
  478. ;
  479.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  480.         Macro
  481.         _ExitMovies
  482.             moveq               #2,D0
  483.             dc.w                $AAAA
  484.         EndM
  485.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  486.         IMPORT_CFM_FUNCTION ExitMovies
  487.     ENDIF
  488.  
  489. ; *************************
  490. ;* Error Routines 
  491. ;*************************
  492.  
  493.  
  494. ;
  495. ; pascal OSErr GetMoviesError(void )
  496. ;
  497.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  498.         Macro
  499.         _GetMoviesError
  500.             moveq               #3,D0
  501.             dc.w                $AAAA
  502.         EndM
  503.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  504.         IMPORT_CFM_FUNCTION GetMoviesError
  505.     ENDIF
  506.  
  507. ;
  508. ; pascal void ClearMoviesStickyError(void )
  509. ;
  510.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  511.         Macro
  512.         _ClearMoviesStickyError
  513.             move.w              #$00DE,D0
  514.             dc.w                $AAAA
  515.         EndM
  516.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  517.         IMPORT_CFM_FUNCTION ClearMoviesStickyError
  518.     ENDIF
  519.  
  520. ;
  521. ; pascal OSErr GetMoviesStickyError(void )
  522. ;
  523.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  524.         Macro
  525.         _GetMoviesStickyError
  526.             moveq               #4,D0
  527.             dc.w                $AAAA
  528.         EndM
  529.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  530.         IMPORT_CFM_FUNCTION GetMoviesStickyError
  531.     ENDIF
  532.  
  533. ;
  534. ; pascal void SetMoviesErrorProc(MoviesErrorUPP errProc, long refcon)
  535. ;
  536.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  537.         Macro
  538.         _SetMoviesErrorProc
  539.             move.w              #$00EF,D0
  540.             dc.w                $AAAA
  541.         EndM
  542.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  543.         IMPORT_CFM_FUNCTION SetMoviesErrorProc
  544.     ENDIF
  545.  
  546. ; *************************
  547. ;* Idle Routines 
  548. ;*************************
  549.  
  550. ;
  551. ; pascal void MoviesTask(Movie theMovie, long maxMilliSecToUse)
  552. ;
  553.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  554.         Macro
  555.         _MoviesTask
  556.             moveq               #5,D0
  557.             dc.w                $AAAA
  558.         EndM
  559.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  560.         IMPORT_CFM_FUNCTION MoviesTask
  561.     ENDIF
  562.  
  563. ;
  564. ; pascal OSErr PrerollMovie(Movie theMovie, TimeValue time, Fixed Rate)
  565. ;
  566.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  567.         Macro
  568.         _PrerollMovie
  569.             moveq               #6,D0
  570.             dc.w                $AAAA
  571.         EndM
  572.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  573.         IMPORT_CFM_FUNCTION PrerollMovie
  574.     ENDIF
  575.  
  576. ;
  577. ; pascal OSErr LoadMovieIntoRam(Movie theMovie, TimeValue time, TimeValue duration, long flags)
  578. ;
  579.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  580.         Macro
  581.         _LoadMovieIntoRam
  582.             moveq               #7,D0
  583.             dc.w                $AAAA
  584.         EndM
  585.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  586.         IMPORT_CFM_FUNCTION LoadMovieIntoRam
  587.     ENDIF
  588.  
  589. ;
  590. ; pascal OSErr LoadTrackIntoRam(Track theTrack, TimeValue time, TimeValue duration, long flags)
  591. ;
  592.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  593.         Macro
  594.         _LoadTrackIntoRam
  595.             move.w              #$016E,D0
  596.             dc.w                $AAAA
  597.         EndM
  598.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  599.         IMPORT_CFM_FUNCTION LoadTrackIntoRam
  600.     ENDIF
  601.  
  602. ;
  603. ; pascal OSErr LoadMediaIntoRam(Media theMedia, TimeValue time, TimeValue duration, long flags)
  604. ;
  605.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  606.         Macro
  607.         _LoadMediaIntoRam
  608.             moveq               #8,D0
  609.             dc.w                $AAAA
  610.         EndM
  611.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  612.         IMPORT_CFM_FUNCTION LoadMediaIntoRam
  613.     ENDIF
  614.  
  615. ;
  616. ; pascal void SetMovieActive(Movie theMovie, Boolean active)
  617. ;
  618.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  619.         Macro
  620.         _SetMovieActive
  621.             moveq               #9,D0
  622.             dc.w                $AAAA
  623.         EndM
  624.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  625.         IMPORT_CFM_FUNCTION SetMovieActive
  626.     ENDIF
  627.  
  628. ;
  629. ; pascal Boolean GetMovieActive(Movie theMovie)
  630. ;
  631.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  632.         Macro
  633.         _GetMovieActive
  634.             moveq               #10,D0
  635.             dc.w                $AAAA
  636.         EndM
  637.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  638.         IMPORT_CFM_FUNCTION GetMovieActive
  639.     ENDIF
  640.  
  641. ; *************************
  642. ;* calls for playing movies, previews, posters
  643. ;*************************
  644.  
  645. ;
  646. ; pascal void StartMovie(Movie theMovie)
  647. ;
  648.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  649.         Macro
  650.         _StartMovie
  651.             moveq               #11,D0
  652.             dc.w                $AAAA
  653.         EndM
  654.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  655.         IMPORT_CFM_FUNCTION StartMovie
  656.     ENDIF
  657.  
  658. ;
  659. ; pascal void StopMovie(Movie theMovie)
  660. ;
  661.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  662.         Macro
  663.         _StopMovie
  664.             moveq               #12,D0
  665.             dc.w                $AAAA
  666.         EndM
  667.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  668.         IMPORT_CFM_FUNCTION StopMovie
  669.     ENDIF
  670.  
  671. ;
  672. ; pascal void GoToBeginningOfMovie(Movie theMovie)
  673. ;
  674.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  675.         Macro
  676.         _GoToBeginningOfMovie
  677.             moveq               #13,D0
  678.             dc.w                $AAAA
  679.         EndM
  680.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  681.         IMPORT_CFM_FUNCTION GoToBeginningOfMovie
  682.     ENDIF
  683.  
  684. ;
  685. ; pascal void GoToEndOfMovie(Movie theMovie)
  686. ;
  687.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  688.         Macro
  689.         _GoToEndOfMovie
  690.             moveq               #14,D0
  691.             dc.w                $AAAA
  692.         EndM
  693.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  694.         IMPORT_CFM_FUNCTION GoToEndOfMovie
  695.     ENDIF
  696.  
  697. ;
  698. ; pascal Boolean IsMovieDone(Movie theMovie)
  699. ;
  700.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  701.         Macro
  702.         _IsMovieDone
  703.             move.w              #$00DD,D0
  704.             dc.w                $AAAA
  705.         EndM
  706.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  707.         IMPORT_CFM_FUNCTION IsMovieDone
  708.     ENDIF
  709.  
  710. ;
  711. ; pascal Boolean GetMoviePreviewMode(Movie theMovie)
  712. ;
  713.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  714.         Macro
  715.         _GetMoviePreviewMode
  716.             moveq               #15,D0
  717.             dc.w                $AAAA
  718.         EndM
  719.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  720.         IMPORT_CFM_FUNCTION GetMoviePreviewMode
  721.     ENDIF
  722.  
  723. ;
  724. ; pascal void SetMoviePreviewMode(Movie theMovie, Boolean usePreview)
  725. ;
  726.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  727.         Macro
  728.         _SetMoviePreviewMode
  729.             moveq               #16,D0
  730.             dc.w                $AAAA
  731.         EndM
  732.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  733.         IMPORT_CFM_FUNCTION SetMoviePreviewMode
  734.     ENDIF
  735.  
  736. ;
  737. ; pascal void ShowMoviePoster(Movie theMovie)
  738. ;
  739.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  740.         Macro
  741.         _ShowMoviePoster
  742.             moveq               #17,D0
  743.             dc.w                $AAAA
  744.         EndM
  745.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  746.         IMPORT_CFM_FUNCTION ShowMoviePoster
  747.     ENDIF
  748.  
  749. ;
  750. ; pascal void PlayMoviePreview(Movie theMovie, MoviePreviewCallOutUPP callOutProc, long refcon)
  751. ;
  752.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  753.         Macro
  754.         _PlayMoviePreview
  755.             move.w              #$00F2,D0
  756.             dc.w                $AAAA
  757.         EndM
  758.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  759.         IMPORT_CFM_FUNCTION PlayMoviePreview
  760.     ENDIF
  761.  
  762. ; *************************
  763. ;* calls for controlling movies & tracks which are playing
  764. ;*************************
  765.  
  766. ;
  767. ; pascal TimeBase GetMovieTimeBase(Movie theMovie)
  768. ;
  769.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  770.         Macro
  771.         _GetMovieTimeBase
  772.             moveq               #18,D0
  773.             dc.w                $AAAA
  774.         EndM
  775.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  776.         IMPORT_CFM_FUNCTION GetMovieTimeBase
  777.     ENDIF
  778.  
  779. ;
  780. ; pascal void SetMovieMasterTimeBase(Movie theMovie, TimeBase tb, const TimeRecord *slaveZero)
  781. ;
  782.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  783.         Macro
  784.         _SetMovieMasterTimeBase
  785.             move.w              #$0167,D0
  786.             dc.w                $AAAA
  787.         EndM
  788.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  789.         IMPORT_CFM_FUNCTION SetMovieMasterTimeBase
  790.     ENDIF
  791.  
  792. ;
  793. ; pascal void SetMovieMasterClock(Movie theMovie, Component clockMeister, const TimeRecord *slaveZero)
  794. ;
  795.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  796.         Macro
  797.         _SetMovieMasterClock
  798.             move.w              #$0168,D0
  799.             dc.w                $AAAA
  800.         EndM
  801.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  802.         IMPORT_CFM_FUNCTION SetMovieMasterClock
  803.     ENDIF
  804.  
  805. ;
  806. ; pascal void GetMovieGWorld(Movie theMovie, CGrafPtr *port, GDHandle *gdh)
  807. ;
  808.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  809.         Macro
  810.         _GetMovieGWorld
  811.             moveq               #21,D0
  812.             dc.w                $AAAA
  813.         EndM
  814.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  815.         IMPORT_CFM_FUNCTION GetMovieGWorld
  816.     ENDIF
  817.  
  818. ;
  819. ; pascal void SetMovieGWorld(Movie theMovie, CGrafPtr port, GDHandle gdh)
  820. ;
  821.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  822.         Macro
  823.         _SetMovieGWorld
  824.             moveq               #22,D0
  825.             dc.w                $AAAA
  826.         EndM
  827.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  828.         IMPORT_CFM_FUNCTION SetMovieGWorld
  829.     ENDIF
  830.  
  831.  
  832. movieDrawingCallWhenChanged        EQU        0
  833. movieDrawingCallAlways            EQU        1
  834. ;
  835. ; pascal void SetMovieDrawingCompleteProc(Movie theMovie, long flags, MovieDrawingCompleteUPP proc, long refCon)
  836. ;
  837.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  838.         Macro
  839.         _SetMovieDrawingCompleteProc
  840.             move.w              #$01DE,D0
  841.             dc.w                $AAAA
  842.         EndM
  843.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  844.         IMPORT_CFM_FUNCTION SetMovieDrawingCompleteProc
  845.     ENDIF
  846.  
  847.  
  848. ;
  849. ; pascal void GetMovieNaturalBoundsRect(Movie theMovie, Rect *naturalBounds)
  850. ;
  851.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  852.         Macro
  853.         _GetMovieNaturalBoundsRect
  854.             move.w              #$022C,D0
  855.             dc.w                $AAAA
  856.         EndM
  857.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  858.         IMPORT_CFM_FUNCTION GetMovieNaturalBoundsRect
  859.     ENDIF
  860.  
  861. ;
  862. ; pascal Track GetNextTrackForCompositing(Movie theMovie, Track theTrack)
  863. ;
  864.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  865.         Macro
  866.         _GetNextTrackForCompositing
  867.             move.w              #$01FA,D0
  868.             dc.w                $AAAA
  869.         EndM
  870.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  871.         IMPORT_CFM_FUNCTION GetNextTrackForCompositing
  872.     ENDIF
  873.  
  874. ;
  875. ; pascal Track GetPrevTrackForCompositing(Movie theMovie, Track theTrack)
  876. ;
  877.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  878.         Macro
  879.         _GetPrevTrackForCompositing
  880.             move.w              #$01FB,D0
  881.             dc.w                $AAAA
  882.         EndM
  883.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  884.         IMPORT_CFM_FUNCTION GetPrevTrackForCompositing
  885.     ENDIF
  886.  
  887. ;
  888. ; pascal OSErr SetMovieCompositeBufferFlags(Movie theMovie, long flags)
  889. ;
  890.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  891.         Macro
  892.         _SetMovieCompositeBufferFlags
  893.             move.w              #$027E,D0
  894.             dc.w                $AAAA
  895.         EndM
  896.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  897.         IMPORT_CFM_FUNCTION SetMovieCompositeBufferFlags
  898.     ENDIF
  899.  
  900. ;
  901. ; pascal OSErr GetMovieCompositeBufferFlags(Movie theMovie, long *flags)
  902. ;
  903.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  904.         Macro
  905.         _GetMovieCompositeBufferFlags
  906.             move.w              #$027F,D0
  907.             dc.w                $AAAA
  908.         EndM
  909.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  910.         IMPORT_CFM_FUNCTION GetMovieCompositeBufferFlags
  911.     ENDIF
  912.  
  913. ;
  914. ; pascal void SetTrackGWorld(Track theTrack, CGrafPtr port, GDHandle gdh, TrackTransferUPP proc, long refCon)
  915. ;
  916.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  917.         Macro
  918.         _SetTrackGWorld
  919.             move.w              #$009D,D0
  920.             dc.w                $AAAA
  921.         EndM
  922.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  923.         IMPORT_CFM_FUNCTION SetTrackGWorld
  924.     ENDIF
  925.  
  926. ;
  927. ; pascal PicHandle GetMoviePict(Movie theMovie, TimeValue time)
  928. ;
  929.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  930.         Macro
  931.         _GetMoviePict
  932.             moveq               #29,D0
  933.             dc.w                $AAAA
  934.         EndM
  935.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  936.         IMPORT_CFM_FUNCTION GetMoviePict
  937.     ENDIF
  938.  
  939. ;
  940. ; pascal PicHandle GetTrackPict(Track theTrack, TimeValue time)
  941. ;
  942.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  943.         Macro
  944.         _GetTrackPict
  945.             moveq               #30,D0
  946.             dc.w                $AAAA
  947.         EndM
  948.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  949.         IMPORT_CFM_FUNCTION GetTrackPict
  950.     ENDIF
  951.  
  952. ;
  953. ; pascal PicHandle GetMoviePosterPict(Movie theMovie)
  954. ;
  955.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  956.         Macro
  957.         _GetMoviePosterPict
  958.             move.w              #$00F7,D0
  959.             dc.w                $AAAA
  960.         EndM
  961.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  962.         IMPORT_CFM_FUNCTION GetMoviePosterPict
  963.     ENDIF
  964.  
  965. ;  called between Begin & EndUpdate 
  966. ;
  967. ; pascal OSErr UpdateMovie(Movie theMovie)
  968. ;
  969.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  970.         Macro
  971.         _UpdateMovie
  972.             moveq               #31,D0
  973.             dc.w                $AAAA
  974.         EndM
  975.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  976.         IMPORT_CFM_FUNCTION UpdateMovie
  977.     ENDIF
  978.  
  979. ;
  980. ; pascal OSErr InvalidateMovieRegion(Movie theMovie, RgnHandle invalidRgn)
  981. ;
  982.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  983.         Macro
  984.         _InvalidateMovieRegion
  985.             move.w              #$022A,D0
  986.             dc.w                $AAAA
  987.         EndM
  988.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  989.         IMPORT_CFM_FUNCTION InvalidateMovieRegion
  990.     ENDIF
  991.  
  992. ; *** spatial movie routines ***
  993. ;
  994. ; pascal void GetMovieBox(Movie theMovie, Rect *boxRect)
  995. ;
  996.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  997.         Macro
  998.         _GetMovieBox
  999.             move.w              #$00F9,D0
  1000.             dc.w                $AAAA
  1001.         EndM
  1002.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1003.         IMPORT_CFM_FUNCTION GetMovieBox
  1004.     ENDIF
  1005.  
  1006. ;
  1007. ; pascal void SetMovieBox(Movie theMovie, const Rect *boxRect)
  1008. ;
  1009.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1010.         Macro
  1011.         _SetMovieBox
  1012.             move.w              #$00FA,D0
  1013.             dc.w                $AAAA
  1014.         EndM
  1015.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1016.         IMPORT_CFM_FUNCTION SetMovieBox
  1017.     ENDIF
  1018.  
  1019. ; * movie display clip 
  1020. ;
  1021. ; pascal RgnHandle GetMovieDisplayClipRgn(Movie theMovie)
  1022. ;
  1023.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1024.         Macro
  1025.         _GetMovieDisplayClipRgn
  1026.             move.w              #$00FC,D0
  1027.             dc.w                $AAAA
  1028.         EndM
  1029.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1030.         IMPORT_CFM_FUNCTION GetMovieDisplayClipRgn
  1031.     ENDIF
  1032.  
  1033. ;
  1034. ; pascal void SetMovieDisplayClipRgn(Movie theMovie, RgnHandle theClip)
  1035. ;
  1036.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1037.         Macro
  1038.         _SetMovieDisplayClipRgn
  1039.             move.w              #$00FD,D0
  1040.             dc.w                $AAAA
  1041.         EndM
  1042.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1043.         IMPORT_CFM_FUNCTION SetMovieDisplayClipRgn
  1044.     ENDIF
  1045.  
  1046. ; * movie src clip 
  1047. ;
  1048. ; pascal RgnHandle GetMovieClipRgn(Movie theMovie)
  1049. ;
  1050.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1051.         Macro
  1052.         _GetMovieClipRgn
  1053.             move.w              #$0100,D0
  1054.             dc.w                $AAAA
  1055.         EndM
  1056.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1057.         IMPORT_CFM_FUNCTION GetMovieClipRgn
  1058.     ENDIF
  1059.  
  1060. ;
  1061. ; pascal void SetMovieClipRgn(Movie theMovie, RgnHandle theClip)
  1062. ;
  1063.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1064.         Macro
  1065.         _SetMovieClipRgn
  1066.             move.w              #$0101,D0
  1067.             dc.w                $AAAA
  1068.         EndM
  1069.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1070.         IMPORT_CFM_FUNCTION SetMovieClipRgn
  1071.     ENDIF
  1072.  
  1073. ; * track src clip 
  1074. ;
  1075. ; pascal RgnHandle GetTrackClipRgn(Track theTrack)
  1076. ;
  1077.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1078.         Macro
  1079.         _GetTrackClipRgn
  1080.             move.w              #$0102,D0
  1081.             dc.w                $AAAA
  1082.         EndM
  1083.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1084.         IMPORT_CFM_FUNCTION GetTrackClipRgn
  1085.     ENDIF
  1086.  
  1087. ;
  1088. ; pascal void SetTrackClipRgn(Track theTrack, RgnHandle theClip)
  1089. ;
  1090.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1091.         Macro
  1092.         _SetTrackClipRgn
  1093.             move.w              #$0103,D0
  1094.             dc.w                $AAAA
  1095.         EndM
  1096.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1097.         IMPORT_CFM_FUNCTION SetTrackClipRgn
  1098.     ENDIF
  1099.  
  1100. ; * bounds in display space (not clipped by display clip) 
  1101. ;
  1102. ; pascal RgnHandle GetMovieDisplayBoundsRgn(Movie theMovie)
  1103. ;
  1104.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1105.         Macro
  1106.         _GetMovieDisplayBoundsRgn
  1107.             move.w              #$00FB,D0
  1108.             dc.w                $AAAA
  1109.         EndM
  1110.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1111.         IMPORT_CFM_FUNCTION GetMovieDisplayBoundsRgn
  1112.     ENDIF
  1113.  
  1114. ;
  1115. ; pascal RgnHandle GetTrackDisplayBoundsRgn(Track theTrack)
  1116. ;
  1117.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1118.         Macro
  1119.         _GetTrackDisplayBoundsRgn
  1120.             move.w              #$0112,D0
  1121.             dc.w                $AAAA
  1122.         EndM
  1123.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1124.         IMPORT_CFM_FUNCTION GetTrackDisplayBoundsRgn
  1125.     ENDIF
  1126.  
  1127. ; * bounds in movie space 
  1128. ;
  1129. ; pascal RgnHandle GetMovieBoundsRgn(Movie theMovie)
  1130. ;
  1131.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1132.         Macro
  1133.         _GetMovieBoundsRgn
  1134.             move.w              #$00FE,D0
  1135.             dc.w                $AAAA
  1136.         EndM
  1137.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1138.         IMPORT_CFM_FUNCTION GetMovieBoundsRgn
  1139.     ENDIF
  1140.  
  1141. ;
  1142. ; pascal RgnHandle GetTrackMovieBoundsRgn(Track theTrack)
  1143. ;
  1144.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1145.         Macro
  1146.         _GetTrackMovieBoundsRgn
  1147.             move.w              #$00FF,D0
  1148.             dc.w                $AAAA
  1149.         EndM
  1150.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1151.         IMPORT_CFM_FUNCTION GetTrackMovieBoundsRgn
  1152.     ENDIF
  1153.  
  1154. ; * bounds in track space 
  1155. ;
  1156. ; pascal RgnHandle GetTrackBoundsRgn(Track theTrack)
  1157. ;
  1158.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1159.         Macro
  1160.         _GetTrackBoundsRgn
  1161.             move.w              #$0111,D0
  1162.             dc.w                $AAAA
  1163.         EndM
  1164.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1165.         IMPORT_CFM_FUNCTION GetTrackBoundsRgn
  1166.     ENDIF
  1167.  
  1168. ; * mattes - always in track space 
  1169. ;
  1170. ; pascal PixMapHandle GetTrackMatte(Track theTrack)
  1171. ;
  1172.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1173.         Macro
  1174.         _GetTrackMatte
  1175.             move.w              #$0115,D0
  1176.             dc.w                $AAAA
  1177.         EndM
  1178.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1179.         IMPORT_CFM_FUNCTION GetTrackMatte
  1180.     ENDIF
  1181.  
  1182. ;
  1183. ; pascal void SetTrackMatte(Track theTrack, PixMapHandle theMatte)
  1184. ;
  1185.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1186.         Macro
  1187.         _SetTrackMatte
  1188.             move.w              #$0116,D0
  1189.             dc.w                $AAAA
  1190.         EndM
  1191.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1192.         IMPORT_CFM_FUNCTION SetTrackMatte
  1193.     ENDIF
  1194.  
  1195. ;
  1196. ; pascal void DisposeMatte(PixMapHandle theMatte)
  1197. ;
  1198.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1199.         Macro
  1200.         _DisposeMatte
  1201.             move.w              #$014A,D0
  1202.             dc.w                $AAAA
  1203.         EndM
  1204.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1205.         IMPORT_CFM_FUNCTION DisposeMatte
  1206.     ENDIF
  1207.  
  1208. ; *************************
  1209. ;* calls for getting/saving movies
  1210. ;*************************
  1211.  
  1212. ;
  1213. ; pascal Movie NewMovie(long flags)
  1214. ;
  1215.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1216.         Macro
  1217.         _NewMovie
  1218.             move.w              #$0187,D0
  1219.             dc.w                $AAAA
  1220.         EndM
  1221.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1222.         IMPORT_CFM_FUNCTION NewMovie
  1223.     ENDIF
  1224.  
  1225. ;
  1226. ; pascal OSErr PutMovieIntoHandle(Movie theMovie, Handle publicMovie)
  1227. ;
  1228.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1229.         Macro
  1230.         _PutMovieIntoHandle
  1231.             moveq               #34,D0
  1232.             dc.w                $AAAA
  1233.         EndM
  1234.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1235.         IMPORT_CFM_FUNCTION PutMovieIntoHandle
  1236.     ENDIF
  1237.  
  1238. ;
  1239. ; pascal OSErr PutMovieIntoDataFork(Movie theMovie, short fRefNum, long offset, long maxSize)
  1240. ;
  1241.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1242.         Macro
  1243.         _PutMovieIntoDataFork
  1244.             move.w              #$01B4,D0
  1245.             dc.w                $AAAA
  1246.         EndM
  1247.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1248.         IMPORT_CFM_FUNCTION PutMovieIntoDataFork
  1249.     ENDIF
  1250.  
  1251. ;
  1252. ; pascal void DisposeMovie(Movie theMovie)
  1253. ;
  1254.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1255.         Macro
  1256.         _DisposeMovie
  1257.             moveq               #35,D0
  1258.             dc.w                $AAAA
  1259.         EndM
  1260.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1261.         IMPORT_CFM_FUNCTION DisposeMovie
  1262.     ENDIF
  1263.  
  1264. ; *************************
  1265. ;* Movie State Routines
  1266. ;*************************
  1267.  
  1268. ;
  1269. ; pascal unsigned long GetMovieCreationTime(Movie theMovie)
  1270. ;
  1271.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1272.         Macro
  1273.         _GetMovieCreationTime
  1274.             moveq               #38,D0
  1275.             dc.w                $AAAA
  1276.         EndM
  1277.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1278.         IMPORT_CFM_FUNCTION GetMovieCreationTime
  1279.     ENDIF
  1280.  
  1281. ;
  1282. ; pascal unsigned long GetMovieModificationTime(Movie theMovie)
  1283. ;
  1284.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1285.         Macro
  1286.         _GetMovieModificationTime
  1287.             moveq               #39,D0
  1288.             dc.w                $AAAA
  1289.         EndM
  1290.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1291.         IMPORT_CFM_FUNCTION GetMovieModificationTime
  1292.     ENDIF
  1293.  
  1294. ;
  1295. ; pascal TimeScale GetMovieTimeScale(Movie theMovie)
  1296. ;
  1297.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1298.         Macro
  1299.         _GetMovieTimeScale
  1300.             moveq               #41,D0
  1301.             dc.w                $AAAA
  1302.         EndM
  1303.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1304.         IMPORT_CFM_FUNCTION GetMovieTimeScale
  1305.     ENDIF
  1306.  
  1307. ;
  1308. ; pascal void SetMovieTimeScale(Movie theMovie, TimeScale timeScale)
  1309. ;
  1310.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1311.         Macro
  1312.         _SetMovieTimeScale
  1313.             moveq               #42,D0
  1314.             dc.w                $AAAA
  1315.         EndM
  1316.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1317.         IMPORT_CFM_FUNCTION SetMovieTimeScale
  1318.     ENDIF
  1319.  
  1320. ;
  1321. ; pascal TimeValue GetMovieDuration(Movie theMovie)
  1322. ;
  1323.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1324.         Macro
  1325.         _GetMovieDuration
  1326.             moveq               #43,D0
  1327.             dc.w                $AAAA
  1328.         EndM
  1329.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1330.         IMPORT_CFM_FUNCTION GetMovieDuration
  1331.     ENDIF
  1332.  
  1333. ;
  1334. ; pascal Fixed GetMovieRate(Movie theMovie)
  1335. ;
  1336.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1337.         Macro
  1338.         _GetMovieRate
  1339.             moveq               #44,D0
  1340.             dc.w                $AAAA
  1341.         EndM
  1342.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1343.         IMPORT_CFM_FUNCTION GetMovieRate
  1344.     ENDIF
  1345.  
  1346. ;
  1347. ; pascal void SetMovieRate(Movie theMovie, Fixed rate)
  1348. ;
  1349.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1350.         Macro
  1351.         _SetMovieRate
  1352.             moveq               #45,D0
  1353.             dc.w                $AAAA
  1354.         EndM
  1355.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1356.         IMPORT_CFM_FUNCTION SetMovieRate
  1357.     ENDIF
  1358.  
  1359. ;
  1360. ; pascal Fixed GetMoviePreferredRate(Movie theMovie)
  1361. ;
  1362.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1363.         Macro
  1364.         _GetMoviePreferredRate
  1365.             move.w              #$00F3,D0
  1366.             dc.w                $AAAA
  1367.         EndM
  1368.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1369.         IMPORT_CFM_FUNCTION GetMoviePreferredRate
  1370.     ENDIF
  1371.  
  1372. ;
  1373. ; pascal void SetMoviePreferredRate(Movie theMovie, Fixed rate)
  1374. ;
  1375.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1376.         Macro
  1377.         _SetMoviePreferredRate
  1378.             move.w              #$00F4,D0
  1379.             dc.w                $AAAA
  1380.         EndM
  1381.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1382.         IMPORT_CFM_FUNCTION SetMoviePreferredRate
  1383.     ENDIF
  1384.  
  1385. ;
  1386. ; pascal short GetMoviePreferredVolume(Movie theMovie)
  1387. ;
  1388.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1389.         Macro
  1390.         _GetMoviePreferredVolume
  1391.             move.w              #$00F5,D0
  1392.             dc.w                $AAAA
  1393.         EndM
  1394.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1395.         IMPORT_CFM_FUNCTION GetMoviePreferredVolume
  1396.     ENDIF
  1397.  
  1398. ;
  1399. ; pascal void SetMoviePreferredVolume(Movie theMovie, short volume)
  1400. ;
  1401.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1402.         Macro
  1403.         _SetMoviePreferredVolume
  1404.             move.w              #$00F6,D0
  1405.             dc.w                $AAAA
  1406.         EndM
  1407.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1408.         IMPORT_CFM_FUNCTION SetMoviePreferredVolume
  1409.     ENDIF
  1410.  
  1411. ;
  1412. ; pascal short GetMovieVolume(Movie theMovie)
  1413. ;
  1414.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1415.         Macro
  1416.         _GetMovieVolume
  1417.             moveq               #46,D0
  1418.             dc.w                $AAAA
  1419.         EndM
  1420.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1421.         IMPORT_CFM_FUNCTION GetMovieVolume
  1422.     ENDIF
  1423.  
  1424. ;
  1425. ; pascal void SetMovieVolume(Movie theMovie, short volume)
  1426. ;
  1427.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1428.         Macro
  1429.         _SetMovieVolume
  1430.             moveq               #47,D0
  1431.             dc.w                $AAAA
  1432.         EndM
  1433.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1434.         IMPORT_CFM_FUNCTION SetMovieVolume
  1435.     ENDIF
  1436.  
  1437. ;
  1438. ; pascal void GetMovieMatrix(Movie theMovie, MatrixRecord *matrix)
  1439. ;
  1440.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1441.         Macro
  1442.         _GetMovieMatrix
  1443.             moveq               #49,D0
  1444.             dc.w                $AAAA
  1445.         EndM
  1446.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1447.         IMPORT_CFM_FUNCTION GetMovieMatrix
  1448.     ENDIF
  1449.  
  1450. ;
  1451. ; pascal void SetMovieMatrix(Movie theMovie, const MatrixRecord *matrix)
  1452. ;
  1453.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1454.         Macro
  1455.         _SetMovieMatrix
  1456.             moveq               #50,D0
  1457.             dc.w                $AAAA
  1458.         EndM
  1459.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1460.         IMPORT_CFM_FUNCTION SetMovieMatrix
  1461.     ENDIF
  1462.  
  1463. ;
  1464. ; pascal void GetMoviePreviewTime(Movie theMovie, TimeValue *previewTime, TimeValue *previewDuration)
  1465. ;
  1466.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1467.         Macro
  1468.         _GetMoviePreviewTime
  1469.             moveq               #51,D0
  1470.             dc.w                $AAAA
  1471.         EndM
  1472.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1473.         IMPORT_CFM_FUNCTION GetMoviePreviewTime
  1474.     ENDIF
  1475.  
  1476. ;
  1477. ; pascal void SetMoviePreviewTime(Movie theMovie, TimeValue previewTime, TimeValue previewDuration)
  1478. ;
  1479.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1480.         Macro
  1481.         _SetMoviePreviewTime
  1482.             moveq               #52,D0
  1483.             dc.w                $AAAA
  1484.         EndM
  1485.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1486.         IMPORT_CFM_FUNCTION SetMoviePreviewTime
  1487.     ENDIF
  1488.  
  1489. ;
  1490. ; pascal TimeValue GetMoviePosterTime(Movie theMovie)
  1491. ;
  1492.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1493.         Macro
  1494.         _GetMoviePosterTime
  1495.             moveq               #53,D0
  1496.             dc.w                $AAAA
  1497.         EndM
  1498.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1499.         IMPORT_CFM_FUNCTION GetMoviePosterTime
  1500.     ENDIF
  1501.  
  1502. ;
  1503. ; pascal void SetMoviePosterTime(Movie theMovie, TimeValue posterTime)
  1504. ;
  1505.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1506.         Macro
  1507.         _SetMoviePosterTime
  1508.             moveq               #54,D0
  1509.             dc.w                $AAAA
  1510.         EndM
  1511.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1512.         IMPORT_CFM_FUNCTION SetMoviePosterTime
  1513.     ENDIF
  1514.  
  1515. ;
  1516. ; pascal void GetMovieSelection(Movie theMovie, TimeValue *selectionTime, TimeValue *selectionDuration)
  1517. ;
  1518.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1519.         Macro
  1520.         _GetMovieSelection
  1521.             moveq               #55,D0
  1522.             dc.w                $AAAA
  1523.         EndM
  1524.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1525.         IMPORT_CFM_FUNCTION GetMovieSelection
  1526.     ENDIF
  1527.  
  1528. ;
  1529. ; pascal void SetMovieSelection(Movie theMovie, TimeValue selectionTime, TimeValue selectionDuration)
  1530. ;
  1531.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1532.         Macro
  1533.         _SetMovieSelection
  1534.             moveq               #56,D0
  1535.             dc.w                $AAAA
  1536.         EndM
  1537.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1538.         IMPORT_CFM_FUNCTION SetMovieSelection
  1539.     ENDIF
  1540.  
  1541. ;
  1542. ; pascal void SetMovieActiveSegment(Movie theMovie, TimeValue startTime, TimeValue duration)
  1543. ;
  1544.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1545.         Macro
  1546.         _SetMovieActiveSegment
  1547.             move.w              #$015C,D0
  1548.             dc.w                $AAAA
  1549.         EndM
  1550.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1551.         IMPORT_CFM_FUNCTION SetMovieActiveSegment
  1552.     ENDIF
  1553.  
  1554. ;
  1555. ; pascal void GetMovieActiveSegment(Movie theMovie, TimeValue *startTime, TimeValue *duration)
  1556. ;
  1557.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1558.         Macro
  1559.         _GetMovieActiveSegment
  1560.             move.w              #$015D,D0
  1561.             dc.w                $AAAA
  1562.         EndM
  1563.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1564.         IMPORT_CFM_FUNCTION GetMovieActiveSegment
  1565.     ENDIF
  1566.  
  1567. ;
  1568. ; pascal TimeValue GetMovieTime(Movie theMovie, TimeRecord *currentTime)
  1569. ;
  1570.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1571.         Macro
  1572.         _GetMovieTime
  1573.             moveq               #57,D0
  1574.             dc.w                $AAAA
  1575.         EndM
  1576.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1577.         IMPORT_CFM_FUNCTION GetMovieTime
  1578.     ENDIF
  1579.  
  1580. ;
  1581. ; pascal void SetMovieTime(Movie theMovie, const TimeRecord *newtime)
  1582. ;
  1583.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1584.         Macro
  1585.         _SetMovieTime
  1586.             moveq               #60,D0
  1587.             dc.w                $AAAA
  1588.         EndM
  1589.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1590.         IMPORT_CFM_FUNCTION SetMovieTime
  1591.     ENDIF
  1592.  
  1593. ;
  1594. ; pascal void SetMovieTimeValue(Movie theMovie, TimeValue newtime)
  1595. ;
  1596.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1597.         Macro
  1598.         _SetMovieTimeValue
  1599.             moveq               #61,D0
  1600.             dc.w                $AAAA
  1601.         EndM
  1602.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1603.         IMPORT_CFM_FUNCTION SetMovieTimeValue
  1604.     ENDIF
  1605.  
  1606.  
  1607. ;
  1608. ; pascal UserData GetMovieUserData(Movie theMovie)
  1609. ;
  1610.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1611.         Macro
  1612.         _GetMovieUserData
  1613.             moveq               #62,D0
  1614.             dc.w                $AAAA
  1615.         EndM
  1616.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1617.         IMPORT_CFM_FUNCTION GetMovieUserData
  1618.     ENDIF
  1619.  
  1620.  
  1621. ; *************************
  1622. ;* Track/Media finding routines
  1623. ;*************************
  1624.  
  1625. ;
  1626. ; pascal long GetMovieTrackCount(Movie theMovie)
  1627. ;
  1628.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1629.         Macro
  1630.         _GetMovieTrackCount
  1631.             moveq               #63,D0
  1632.             dc.w                $AAAA
  1633.         EndM
  1634.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1635.         IMPORT_CFM_FUNCTION GetMovieTrackCount
  1636.     ENDIF
  1637.  
  1638. ;
  1639. ; pascal Track GetMovieTrack(Movie theMovie, long trackID)
  1640. ;
  1641.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1642.         Macro
  1643.         _GetMovieTrack
  1644.             moveq               #64,D0
  1645.             dc.w                $AAAA
  1646.         EndM
  1647.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1648.         IMPORT_CFM_FUNCTION GetMovieTrack
  1649.     ENDIF
  1650.  
  1651. ;
  1652. ; pascal Track GetMovieIndTrack(Movie theMovie, long index)
  1653. ;
  1654.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1655.         Macro
  1656.         _GetMovieIndTrack
  1657.             move.w              #$0117,D0
  1658.             dc.w                $AAAA
  1659.         EndM
  1660.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1661.         IMPORT_CFM_FUNCTION GetMovieIndTrack
  1662.     ENDIF
  1663.  
  1664. ;
  1665. ; pascal Track GetMovieIndTrackType(Movie theMovie, long index, OSType trackType, long flags)
  1666. ;
  1667.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1668.         Macro
  1669.         _GetMovieIndTrackType
  1670.             move.w              #$0208,D0
  1671.             dc.w                $AAAA
  1672.         EndM
  1673.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1674.         IMPORT_CFM_FUNCTION GetMovieIndTrackType
  1675.     ENDIF
  1676.  
  1677. ;
  1678. ; pascal long GetTrackID(Track theTrack)
  1679. ;
  1680.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1681.         Macro
  1682.         _GetTrackID
  1683.             move.w              #$0127,D0
  1684.             dc.w                $AAAA
  1685.         EndM
  1686.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1687.         IMPORT_CFM_FUNCTION GetTrackID
  1688.     ENDIF
  1689.  
  1690. ;
  1691. ; pascal Movie GetTrackMovie(Track theTrack)
  1692. ;
  1693.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1694.         Macro
  1695.         _GetTrackMovie
  1696.             move.w              #$00D0,D0
  1697.             dc.w                $AAAA
  1698.         EndM
  1699.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1700.         IMPORT_CFM_FUNCTION GetTrackMovie
  1701.     ENDIF
  1702.  
  1703. ; *************************
  1704. ;* Track creation routines
  1705. ;*************************
  1706.  
  1707. ;
  1708. ; pascal Track NewMovieTrack(Movie theMovie, Fixed width, Fixed height, short trackVolume)
  1709. ;
  1710.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1711.         Macro
  1712.         _NewMovieTrack
  1713.             move.w              #$0188,D0
  1714.             dc.w                $AAAA
  1715.         EndM
  1716.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1717.         IMPORT_CFM_FUNCTION NewMovieTrack
  1718.     ENDIF
  1719.  
  1720. ;
  1721. ; pascal void DisposeMovieTrack(Track theTrack)
  1722. ;
  1723.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1724.         Macro
  1725.         _DisposeMovieTrack
  1726.             moveq               #66,D0
  1727.             dc.w                $AAAA
  1728.         EndM
  1729.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1730.         IMPORT_CFM_FUNCTION DisposeMovieTrack
  1731.     ENDIF
  1732.  
  1733. ; *************************
  1734. ;* Track State routines
  1735. ;*************************
  1736.  
  1737. ;
  1738. ; pascal unsigned long GetTrackCreationTime(Track theTrack)
  1739. ;
  1740.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1741.         Macro
  1742.         _GetTrackCreationTime
  1743.             moveq               #67,D0
  1744.             dc.w                $AAAA
  1745.         EndM
  1746.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1747.         IMPORT_CFM_FUNCTION GetTrackCreationTime
  1748.     ENDIF
  1749.  
  1750. ;
  1751. ; pascal unsigned long GetTrackModificationTime(Track theTrack)
  1752. ;
  1753.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1754.         Macro
  1755.         _GetTrackModificationTime
  1756.             moveq               #68,D0
  1757.             dc.w                $AAAA
  1758.         EndM
  1759.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1760.         IMPORT_CFM_FUNCTION GetTrackModificationTime
  1761.     ENDIF
  1762.  
  1763.  
  1764. ;
  1765. ; pascal Boolean GetTrackEnabled(Track theTrack)
  1766. ;
  1767.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1768.         Macro
  1769.         _GetTrackEnabled
  1770.             moveq               #69,D0
  1771.             dc.w                $AAAA
  1772.         EndM
  1773.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1774.         IMPORT_CFM_FUNCTION GetTrackEnabled
  1775.     ENDIF
  1776.  
  1777. ;
  1778. ; pascal void SetTrackEnabled(Track theTrack, Boolean isEnabled)
  1779. ;
  1780.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1781.         Macro
  1782.         _SetTrackEnabled
  1783.             moveq               #70,D0
  1784.             dc.w                $AAAA
  1785.         EndM
  1786.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1787.         IMPORT_CFM_FUNCTION SetTrackEnabled
  1788.     ENDIF
  1789.  
  1790. ;
  1791. ; pascal long GetTrackUsage(Track theTrack)
  1792. ;
  1793.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1794.         Macro
  1795.         _GetTrackUsage
  1796.             moveq               #71,D0
  1797.             dc.w                $AAAA
  1798.         EndM
  1799.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1800.         IMPORT_CFM_FUNCTION GetTrackUsage
  1801.     ENDIF
  1802.  
  1803. ;
  1804. ; pascal void SetTrackUsage(Track theTrack, long usage)
  1805. ;
  1806.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1807.         Macro
  1808.         _SetTrackUsage
  1809.             moveq               #72,D0
  1810.             dc.w                $AAAA
  1811.         EndM
  1812.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1813.         IMPORT_CFM_FUNCTION SetTrackUsage
  1814.     ENDIF
  1815.  
  1816. ;
  1817. ; pascal TimeValue GetTrackDuration(Track theTrack)
  1818. ;
  1819.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1820.         Macro
  1821.         _GetTrackDuration
  1822.             moveq               #75,D0
  1823.             dc.w                $AAAA
  1824.         EndM
  1825.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1826.         IMPORT_CFM_FUNCTION GetTrackDuration
  1827.     ENDIF
  1828.  
  1829. ;
  1830. ; pascal TimeValue GetTrackOffset(Track theTrack)
  1831. ;
  1832.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1833.         Macro
  1834.         _GetTrackOffset
  1835.             moveq               #76,D0
  1836.             dc.w                $AAAA
  1837.         EndM
  1838.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1839.         IMPORT_CFM_FUNCTION GetTrackOffset
  1840.     ENDIF
  1841.  
  1842. ;
  1843. ; pascal void SetTrackOffset(Track theTrack, TimeValue movieOffsetTime)
  1844. ;
  1845.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1846.         Macro
  1847.         _SetTrackOffset
  1848.             moveq               #77,D0
  1849.             dc.w                $AAAA
  1850.         EndM
  1851.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1852.         IMPORT_CFM_FUNCTION SetTrackOffset
  1853.     ENDIF
  1854.  
  1855. ;
  1856. ; pascal short GetTrackLayer(Track theTrack)
  1857. ;
  1858.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1859.         Macro
  1860.         _GetTrackLayer
  1861.             moveq               #80,D0
  1862.             dc.w                $AAAA
  1863.         EndM
  1864.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1865.         IMPORT_CFM_FUNCTION GetTrackLayer
  1866.     ENDIF
  1867.  
  1868. ;
  1869. ; pascal void SetTrackLayer(Track theTrack, short layer)
  1870. ;
  1871.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1872.         Macro
  1873.         _SetTrackLayer
  1874.             moveq               #81,D0
  1875.             dc.w                $AAAA
  1876.         EndM
  1877.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1878.         IMPORT_CFM_FUNCTION SetTrackLayer
  1879.     ENDIF
  1880.  
  1881. ;
  1882. ; pascal Track GetTrackAlternate(Track theTrack)
  1883. ;
  1884.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1885.         Macro
  1886.         _GetTrackAlternate
  1887.             moveq               #82,D0
  1888.             dc.w                $AAAA
  1889.         EndM
  1890.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1891.         IMPORT_CFM_FUNCTION GetTrackAlternate
  1892.     ENDIF
  1893.  
  1894. ;
  1895. ; pascal void SetTrackAlternate(Track theTrack, Track alternateT)
  1896. ;
  1897.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1898.         Macro
  1899.         _SetTrackAlternate
  1900.             moveq               #83,D0
  1901.             dc.w                $AAAA
  1902.         EndM
  1903.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1904.         IMPORT_CFM_FUNCTION SetTrackAlternate
  1905.     ENDIF
  1906.  
  1907. ;
  1908. ; pascal void SetAutoTrackAlternatesEnabled(Movie theMovie, Boolean enable)
  1909. ;
  1910.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1911.         Macro
  1912.         _SetAutoTrackAlternatesEnabled
  1913.             move.w              #$015E,D0
  1914.             dc.w                $AAAA
  1915.         EndM
  1916.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1917.         IMPORT_CFM_FUNCTION SetAutoTrackAlternatesEnabled
  1918.     ENDIF
  1919.  
  1920. ;
  1921. ; pascal void SelectMovieAlternates(Movie theMovie)
  1922. ;
  1923.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1924.         Macro
  1925.         _SelectMovieAlternates
  1926.             move.w              #$015F,D0
  1927.             dc.w                $AAAA
  1928.         EndM
  1929.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1930.         IMPORT_CFM_FUNCTION SelectMovieAlternates
  1931.     ENDIF
  1932.  
  1933. ;
  1934. ; pascal short GetTrackVolume(Track theTrack)
  1935. ;
  1936.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1937.         Macro
  1938.         _GetTrackVolume
  1939.             moveq               #84,D0
  1940.             dc.w                $AAAA
  1941.         EndM
  1942.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1943.         IMPORT_CFM_FUNCTION GetTrackVolume
  1944.     ENDIF
  1945.  
  1946. ;
  1947. ; pascal void SetTrackVolume(Track theTrack, short volume)
  1948. ;
  1949.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1950.         Macro
  1951.         _SetTrackVolume
  1952.             moveq               #85,D0
  1953.             dc.w                $AAAA
  1954.         EndM
  1955.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1956.         IMPORT_CFM_FUNCTION SetTrackVolume
  1957.     ENDIF
  1958.  
  1959. ;
  1960. ; pascal void GetTrackMatrix(Track theTrack, MatrixRecord *matrix)
  1961. ;
  1962.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1963.         Macro
  1964.         _GetTrackMatrix
  1965.             moveq               #86,D0
  1966.             dc.w                $AAAA
  1967.         EndM
  1968.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1969.         IMPORT_CFM_FUNCTION GetTrackMatrix
  1970.     ENDIF
  1971.  
  1972. ;
  1973. ; pascal void SetTrackMatrix(Track theTrack, const MatrixRecord *matrix)
  1974. ;
  1975.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1976.         Macro
  1977.         _SetTrackMatrix
  1978.             moveq               #87,D0
  1979.             dc.w                $AAAA
  1980.         EndM
  1981.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1982.         IMPORT_CFM_FUNCTION SetTrackMatrix
  1983.     ENDIF
  1984.  
  1985. ;
  1986. ; pascal void GetTrackDimensions(Track theTrack, Fixed *width, Fixed *height)
  1987. ;
  1988.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  1989.         Macro
  1990.         _GetTrackDimensions
  1991.             moveq               #93,D0
  1992.             dc.w                $AAAA
  1993.         EndM
  1994.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  1995.         IMPORT_CFM_FUNCTION GetTrackDimensions
  1996.     ENDIF
  1997.  
  1998. ;
  1999. ; pascal void SetTrackDimensions(Track theTrack, Fixed width, Fixed height)
  2000. ;
  2001.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2002.         Macro
  2003.         _SetTrackDimensions
  2004.             moveq               #94,D0
  2005.             dc.w                $AAAA
  2006.         EndM
  2007.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2008.         IMPORT_CFM_FUNCTION SetTrackDimensions
  2009.     ENDIF
  2010.  
  2011. ;
  2012. ; pascal UserData GetTrackUserData(Track theTrack)
  2013. ;
  2014.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2015.         Macro
  2016.         _GetTrackUserData
  2017.             moveq               #95,D0
  2018.             dc.w                $AAAA
  2019.         EndM
  2020.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2021.         IMPORT_CFM_FUNCTION GetTrackUserData
  2022.     ENDIF
  2023.  
  2024. ;
  2025. ; pascal OSErr GetTrackDisplayMatrix(Track theTrack, MatrixRecord *matrix)
  2026. ;
  2027.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2028.         Macro
  2029.         _GetTrackDisplayMatrix
  2030.             move.w              #$0263,D0
  2031.             dc.w                $AAAA
  2032.         EndM
  2033.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2034.         IMPORT_CFM_FUNCTION GetTrackDisplayMatrix
  2035.     ENDIF
  2036.  
  2037. ;
  2038. ; pascal OSErr GetTrackSoundLocalizationSettings(Track theTrack, Handle *settings)
  2039. ;
  2040.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2041.         Macro
  2042.         _GetTrackSoundLocalizationSettings
  2043.             move.w              #$0282,D0
  2044.             dc.w                $AAAA
  2045.         EndM
  2046.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2047.         IMPORT_CFM_FUNCTION GetTrackSoundLocalizationSettings
  2048.     ENDIF
  2049.  
  2050. ;
  2051. ; pascal OSErr SetTrackSoundLocalizationSettings(Track theTrack, Handle settings)
  2052. ;
  2053.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2054.         Macro
  2055.         _SetTrackSoundLocalizationSettings
  2056.             move.w              #$0283,D0
  2057.             dc.w                $AAAA
  2058.         EndM
  2059.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2060.         IMPORT_CFM_FUNCTION SetTrackSoundLocalizationSettings
  2061.     ENDIF
  2062.  
  2063. ; *************************
  2064. ;* get Media routines
  2065. ;*************************
  2066.  
  2067. ;
  2068. ; pascal Media NewTrackMedia(Track theTrack, OSType mediaType, TimeScale timeScale, Handle dataRef, OSType dataRefType)
  2069. ;
  2070.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2071.         Macro
  2072.         _NewTrackMedia
  2073.             move.w              #$018E,D0
  2074.             dc.w                $AAAA
  2075.         EndM
  2076.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2077.         IMPORT_CFM_FUNCTION NewTrackMedia
  2078.     ENDIF
  2079.  
  2080. ;
  2081. ; pascal void DisposeTrackMedia(Media theMedia)
  2082. ;
  2083.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2084.         Macro
  2085.         _DisposeTrackMedia
  2086.             moveq               #97,D0
  2087.             dc.w                $AAAA
  2088.         EndM
  2089.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2090.         IMPORT_CFM_FUNCTION DisposeTrackMedia
  2091.     ENDIF
  2092.  
  2093. ;
  2094. ; pascal Media GetTrackMedia(Track theTrack)
  2095. ;
  2096.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2097.         Macro
  2098.         _GetTrackMedia
  2099.             moveq               #98,D0
  2100.             dc.w                $AAAA
  2101.         EndM
  2102.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2103.         IMPORT_CFM_FUNCTION GetTrackMedia
  2104.     ENDIF
  2105.  
  2106. ;
  2107. ; pascal Track GetMediaTrack(Media theMedia)
  2108. ;
  2109.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2110.         Macro
  2111.         _GetMediaTrack
  2112.             move.w              #$00C5,D0
  2113.             dc.w                $AAAA
  2114.         EndM
  2115.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2116.         IMPORT_CFM_FUNCTION GetMediaTrack
  2117.     ENDIF
  2118.  
  2119.  
  2120.  
  2121. ; *************************
  2122. ;* Media State routines
  2123. ;*************************
  2124.  
  2125. ;
  2126. ; pascal unsigned long GetMediaCreationTime(Media theMedia)
  2127. ;
  2128.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2129.         Macro
  2130.         _GetMediaCreationTime
  2131.             moveq               #102,D0
  2132.             dc.w                $AAAA
  2133.         EndM
  2134.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2135.         IMPORT_CFM_FUNCTION GetMediaCreationTime
  2136.     ENDIF
  2137.  
  2138. ;
  2139. ; pascal unsigned long GetMediaModificationTime(Media theMedia)
  2140. ;
  2141.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2142.         Macro
  2143.         _GetMediaModificationTime
  2144.             moveq               #103,D0
  2145.             dc.w                $AAAA
  2146.         EndM
  2147.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2148.         IMPORT_CFM_FUNCTION GetMediaModificationTime
  2149.     ENDIF
  2150.  
  2151. ;
  2152. ; pascal TimeScale GetMediaTimeScale(Media theMedia)
  2153. ;
  2154.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2155.         Macro
  2156.         _GetMediaTimeScale
  2157.             moveq               #104,D0
  2158.             dc.w                $AAAA
  2159.         EndM
  2160.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2161.         IMPORT_CFM_FUNCTION GetMediaTimeScale
  2162.     ENDIF
  2163.  
  2164. ;
  2165. ; pascal void SetMediaTimeScale(Media theMedia, TimeScale timeScale)
  2166. ;
  2167.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2168.         Macro
  2169.         _SetMediaTimeScale
  2170.             moveq               #105,D0
  2171.             dc.w                $AAAA
  2172.         EndM
  2173.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2174.         IMPORT_CFM_FUNCTION SetMediaTimeScale
  2175.     ENDIF
  2176.  
  2177. ;
  2178. ; pascal TimeValue GetMediaDuration(Media theMedia)
  2179. ;
  2180.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2181.         Macro
  2182.         _GetMediaDuration
  2183.             moveq               #106,D0
  2184.             dc.w                $AAAA
  2185.         EndM
  2186.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2187.         IMPORT_CFM_FUNCTION GetMediaDuration
  2188.     ENDIF
  2189.  
  2190. ;
  2191. ; pascal short GetMediaLanguage(Media theMedia)
  2192. ;
  2193.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2194.         Macro
  2195.         _GetMediaLanguage
  2196.             moveq               #107,D0
  2197.             dc.w                $AAAA
  2198.         EndM
  2199.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2200.         IMPORT_CFM_FUNCTION GetMediaLanguage
  2201.     ENDIF
  2202.  
  2203. ;
  2204. ; pascal void SetMediaLanguage(Media theMedia, short language)
  2205. ;
  2206.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2207.         Macro
  2208.         _SetMediaLanguage
  2209.             moveq               #108,D0
  2210.             dc.w                $AAAA
  2211.         EndM
  2212.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2213.         IMPORT_CFM_FUNCTION SetMediaLanguage
  2214.     ENDIF
  2215.  
  2216. ;
  2217. ; pascal short GetMediaQuality(Media theMedia)
  2218. ;
  2219.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2220.         Macro
  2221.         _GetMediaQuality
  2222.             moveq               #109,D0
  2223.             dc.w                $AAAA
  2224.         EndM
  2225.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2226.         IMPORT_CFM_FUNCTION GetMediaQuality
  2227.     ENDIF
  2228.  
  2229. ;
  2230. ; pascal void SetMediaQuality(Media theMedia, short quality)
  2231. ;
  2232.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2233.         Macro
  2234.         _SetMediaQuality
  2235.             moveq               #110,D0
  2236.             dc.w                $AAAA
  2237.         EndM
  2238.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2239.         IMPORT_CFM_FUNCTION SetMediaQuality
  2240.     ENDIF
  2241.  
  2242. ;
  2243. ; pascal void GetMediaHandlerDescription(Media theMedia, OSType *mediaType, Str255 creatorName, OSType *creatorManufacturer)
  2244. ;
  2245.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2246.         Macro
  2247.         _GetMediaHandlerDescription
  2248.             moveq               #111,D0
  2249.             dc.w                $AAAA
  2250.         EndM
  2251.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2252.         IMPORT_CFM_FUNCTION GetMediaHandlerDescription
  2253.     ENDIF
  2254.  
  2255. ;
  2256. ; pascal UserData GetMediaUserData(Media theMedia)
  2257. ;
  2258.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2259.         Macro
  2260.         _GetMediaUserData
  2261.             moveq               #112,D0
  2262.             dc.w                $AAAA
  2263.         EndM
  2264.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2265.         IMPORT_CFM_FUNCTION GetMediaUserData
  2266.     ENDIF
  2267.  
  2268. ;
  2269. ; pascal OSErr GetMediaInputMap(Media theMedia, QTAtomContainer *inputMap)
  2270. ;
  2271.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2272.         Macro
  2273.         _GetMediaInputMap
  2274.             move.w              #$0249,D0
  2275.             dc.w                $AAAA
  2276.         EndM
  2277.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2278.         IMPORT_CFM_FUNCTION GetMediaInputMap
  2279.     ENDIF
  2280.  
  2281. ;
  2282. ; pascal OSErr SetMediaInputMap(Media theMedia, QTAtomContainer inputMap)
  2283. ;
  2284.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2285.         Macro
  2286.         _SetMediaInputMap
  2287.             move.w              #$024A,D0
  2288.             dc.w                $AAAA
  2289.         EndM
  2290.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2291.         IMPORT_CFM_FUNCTION SetMediaInputMap
  2292.     ENDIF
  2293.  
  2294. ; *************************
  2295. ;* Media Handler routines
  2296. ;*************************
  2297.  
  2298. ;
  2299. ; pascal MediaHandler GetMediaHandler(Media theMedia)
  2300. ;
  2301.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2302.         Macro
  2303.         _GetMediaHandler
  2304.             moveq               #113,D0
  2305.             dc.w                $AAAA
  2306.         EndM
  2307.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2308.         IMPORT_CFM_FUNCTION GetMediaHandler
  2309.     ENDIF
  2310.  
  2311. ;
  2312. ; pascal OSErr SetMediaHandler(Media theMedia, MediaHandlerComponent mH)
  2313. ;
  2314.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2315.         Macro
  2316.         _SetMediaHandler
  2317.             move.w              #$0190,D0
  2318.             dc.w                $AAAA
  2319.         EndM
  2320.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2321.         IMPORT_CFM_FUNCTION SetMediaHandler
  2322.     ENDIF
  2323.  
  2324.  
  2325. ; *************************
  2326. ;* Media's Data routines
  2327. ;*************************
  2328.  
  2329. ;
  2330. ; pascal OSErr BeginMediaEdits(Media theMedia)
  2331. ;
  2332.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2333.         Macro
  2334.         _BeginMediaEdits
  2335.             moveq               #114,D0
  2336.             dc.w                $AAAA
  2337.         EndM
  2338.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2339.         IMPORT_CFM_FUNCTION BeginMediaEdits
  2340.     ENDIF
  2341.  
  2342. ;
  2343. ; pascal OSErr EndMediaEdits(Media theMedia)
  2344. ;
  2345.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2346.         Macro
  2347.         _EndMediaEdits
  2348.             moveq               #115,D0
  2349.             dc.w                $AAAA
  2350.         EndM
  2351.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2352.         IMPORT_CFM_FUNCTION EndMediaEdits
  2353.     ENDIF
  2354.  
  2355. ;
  2356. ; pascal OSErr SetMediaDefaultDataRefIndex(Media theMedia, short index)
  2357. ;
  2358.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2359.         Macro
  2360.         _SetMediaDefaultDataRefIndex
  2361.             move.w              #$01E0,D0
  2362.             dc.w                $AAAA
  2363.         EndM
  2364.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2365.         IMPORT_CFM_FUNCTION SetMediaDefaultDataRefIndex
  2366.     ENDIF
  2367.  
  2368. ;
  2369. ; pascal void GetMediaDataHandlerDescription(Media theMedia, short index, OSType *dhType, Str255 creatorName, OSType *creatorManufacturer)
  2370. ;
  2371.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2372.         Macro
  2373.         _GetMediaDataHandlerDescription
  2374.             move.w              #$019E,D0
  2375.             dc.w                $AAAA
  2376.         EndM
  2377.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2378.         IMPORT_CFM_FUNCTION GetMediaDataHandlerDescription
  2379.     ENDIF
  2380.  
  2381. ;
  2382. ; pascal DataHandler GetMediaDataHandler(Media theMedia, short index)
  2383. ;
  2384.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2385.         Macro
  2386.         _GetMediaDataHandler
  2387.             move.w              #$019F,D0
  2388.             dc.w                $AAAA
  2389.         EndM
  2390.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2391.         IMPORT_CFM_FUNCTION GetMediaDataHandler
  2392.     ENDIF
  2393.  
  2394. ;
  2395. ; pascal OSErr SetMediaDataHandler(Media theMedia, short index, DataHandlerComponent dataHandler)
  2396. ;
  2397.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2398.         Macro
  2399.         _SetMediaDataHandler
  2400.             move.w              #$01A0,D0
  2401.             dc.w                $AAAA
  2402.         EndM
  2403.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2404.         IMPORT_CFM_FUNCTION SetMediaDataHandler
  2405.     ENDIF
  2406.  
  2407. ;
  2408. ; pascal Component GetDataHandler(Handle dataRef, OSType dataHandlerSubType, long flags)
  2409. ;
  2410.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2411.         Macro
  2412.         _GetDataHandler
  2413.             move.w              #$01ED,D0
  2414.             dc.w                $AAAA
  2415.         EndM
  2416.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2417.         IMPORT_CFM_FUNCTION GetDataHandler
  2418.     ENDIF
  2419.  
  2420.  
  2421. ; *************************
  2422. ;* Media Sample Table Routines
  2423. ;*************************
  2424.  
  2425. ;
  2426. ; pascal long GetMediaSampleDescriptionCount(Media theMedia)
  2427. ;
  2428.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2429.         Macro
  2430.         _GetMediaSampleDescriptionCount
  2431.             moveq               #119,D0
  2432.             dc.w                $AAAA
  2433.         EndM
  2434.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2435.         IMPORT_CFM_FUNCTION GetMediaSampleDescriptionCount
  2436.     ENDIF
  2437.  
  2438. ;
  2439. ; pascal void GetMediaSampleDescription(Media theMedia, long index, SampleDescriptionHandle descH)
  2440. ;
  2441.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2442.         Macro
  2443.         _GetMediaSampleDescription
  2444.             moveq               #120,D0
  2445.             dc.w                $AAAA
  2446.         EndM
  2447.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2448.         IMPORT_CFM_FUNCTION GetMediaSampleDescription
  2449.     ENDIF
  2450.  
  2451. ;
  2452. ; pascal OSErr SetMediaSampleDescription(Media theMedia, long index, SampleDescriptionHandle descH)
  2453. ;
  2454.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2455.         Macro
  2456.         _SetMediaSampleDescription
  2457.             move.w              #$01D0,D0
  2458.             dc.w                $AAAA
  2459.         EndM
  2460.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2461.         IMPORT_CFM_FUNCTION SetMediaSampleDescription
  2462.     ENDIF
  2463.  
  2464. ;
  2465. ; pascal long GetMediaSampleCount(Media theMedia)
  2466. ;
  2467.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2468.         Macro
  2469.         _GetMediaSampleCount
  2470.             moveq               #121,D0
  2471.             dc.w                $AAAA
  2472.         EndM
  2473.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2474.         IMPORT_CFM_FUNCTION GetMediaSampleCount
  2475.     ENDIF
  2476.  
  2477. ;
  2478. ; pascal void SampleNumToMediaTime(Media theMedia, long logicalSampleNum, TimeValue *sampleTime, TimeValue *sampleDuration)
  2479. ;
  2480.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2481.         Macro
  2482.         _SampleNumToMediaTime
  2483.             moveq               #122,D0
  2484.             dc.w                $AAAA
  2485.         EndM
  2486.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2487.         IMPORT_CFM_FUNCTION SampleNumToMediaTime
  2488.     ENDIF
  2489.  
  2490. ;
  2491. ; pascal void MediaTimeToSampleNum(Media theMedia, TimeValue time, long *sampleNum, TimeValue *sampleTime, TimeValue *sampleDuration)
  2492. ;
  2493.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2494.         Macro
  2495.         _MediaTimeToSampleNum
  2496.             moveq               #123,D0
  2497.             dc.w                $AAAA
  2498.         EndM
  2499.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2500.         IMPORT_CFM_FUNCTION MediaTimeToSampleNum
  2501.     ENDIF
  2502.  
  2503.  
  2504. ;
  2505. ; pascal OSErr AddMediaSample(Media theMedia, Handle dataIn, long inOffset, unsigned long size, TimeValue durationPerSample, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, short sampleFlags, TimeValue *sampleTime)
  2506. ;
  2507.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2508.         Macro
  2509.         _AddMediaSample
  2510.             moveq               #124,D0
  2511.             dc.w                $AAAA
  2512.         EndM
  2513.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2514.         IMPORT_CFM_FUNCTION AddMediaSample
  2515.     ENDIF
  2516.  
  2517. ;
  2518. ; pascal OSErr AddMediaSampleReference(Media theMedia, long dataOffset, unsigned long size, TimeValue durationPerSample, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, short sampleFlags, TimeValue *sampleTime)
  2519. ;
  2520.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2521.         Macro
  2522.         _AddMediaSampleReference
  2523.             moveq               #125,D0
  2524.             dc.w                $AAAA
  2525.         EndM
  2526.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2527.         IMPORT_CFM_FUNCTION AddMediaSampleReference
  2528.     ENDIF
  2529.  
  2530. ;
  2531. ; pascal OSErr AddMediaSampleReferences(Media theMedia, SampleDescriptionHandle sampleDescriptionH, long numberOfSamples, SampleReferencePtr sampleRefs, TimeValue *sampleTime)
  2532. ;
  2533.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2534.         Macro
  2535.         _AddMediaSampleReferences
  2536.             move.w              #$01F7,D0
  2537.             dc.w                $AAAA
  2538.         EndM
  2539.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2540.         IMPORT_CFM_FUNCTION AddMediaSampleReferences
  2541.     ENDIF
  2542.  
  2543. ;
  2544. ; pascal OSErr GetMediaSample(Media theMedia, Handle dataOut, long maxSizeToGrow, long *size, TimeValue time, TimeValue *sampleTime, TimeValue *durationPerSample, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfSamples, long *numberOfSamples, short *sampleFlags)
  2545. ;
  2546.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2547.         Macro
  2548.         _GetMediaSample
  2549.             moveq               #126,D0
  2550.             dc.w                $AAAA
  2551.         EndM
  2552.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2553.         IMPORT_CFM_FUNCTION GetMediaSample
  2554.     ENDIF
  2555.  
  2556. ;
  2557. ; pascal OSErr GetMediaSampleReference(Media theMedia, long *dataOffset, long *size, TimeValue time, TimeValue *sampleTime, TimeValue *durationPerSample, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfSamples, long *numberOfSamples, short *sampleFlags)
  2558. ;
  2559.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2560.         Macro
  2561.         _GetMediaSampleReference
  2562.             moveq               #127,D0
  2563.             dc.w                $AAAA
  2564.         EndM
  2565.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2566.         IMPORT_CFM_FUNCTION GetMediaSampleReference
  2567.     ENDIF
  2568.  
  2569. ;
  2570. ; pascal OSErr GetMediaSampleReferences(Media theMedia, TimeValue time, TimeValue *sampleTime, SampleDescriptionHandle sampleDescriptionH, long *sampleDescriptionIndex, long maxNumberOfEntries, long *actualNumberofEntries, SampleReferencePtr sampleRefs)
  2571. ;
  2572.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2573.         Macro
  2574.         _GetMediaSampleReferences
  2575.             move.w              #$0235,D0
  2576.             dc.w                $AAAA
  2577.         EndM
  2578.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2579.         IMPORT_CFM_FUNCTION GetMediaSampleReferences
  2580.     ENDIF
  2581.  
  2582. ;
  2583. ; pascal OSErr SetMediaPreferredChunkSize(Media theMedia, long maxChunkSize)
  2584. ;
  2585.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2586.         Macro
  2587.         _SetMediaPreferredChunkSize
  2588.             move.w              #$01F8,D0
  2589.             dc.w                $AAAA
  2590.         EndM
  2591.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2592.         IMPORT_CFM_FUNCTION SetMediaPreferredChunkSize
  2593.     ENDIF
  2594.  
  2595. ;
  2596. ; pascal OSErr GetMediaPreferredChunkSize(Media theMedia, long *maxChunkSize)
  2597. ;
  2598.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2599.         Macro
  2600.         _GetMediaPreferredChunkSize
  2601.             move.w              #$01F9,D0
  2602.             dc.w                $AAAA
  2603.         EndM
  2604.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2605.         IMPORT_CFM_FUNCTION GetMediaPreferredChunkSize
  2606.     ENDIF
  2607.  
  2608. ;
  2609. ; pascal OSErr SetMediaShadowSync(Media theMedia, long frameDiffSampleNum, long syncSampleNum)
  2610. ;
  2611.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2612.         Macro
  2613.         _SetMediaShadowSync
  2614.             move.w              #$0121,D0
  2615.             dc.w                $AAAA
  2616.         EndM
  2617.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2618.         IMPORT_CFM_FUNCTION SetMediaShadowSync
  2619.     ENDIF
  2620.  
  2621. ;
  2622. ; pascal OSErr GetMediaShadowSync(Media theMedia, long frameDiffSampleNum, long *syncSampleNum)
  2623. ;
  2624.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2625.         Macro
  2626.         _GetMediaShadowSync
  2627.             move.w              #$0122,D0
  2628.             dc.w                $AAAA
  2629.         EndM
  2630.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2631.         IMPORT_CFM_FUNCTION GetMediaShadowSync
  2632.     ENDIF
  2633.  
  2634. ; *************************
  2635. ;* Editing Routines
  2636. ;*************************
  2637.  
  2638. ;
  2639. ; pascal OSErr InsertMediaIntoTrack(Track theTrack, TimeValue trackStart, TimeValue mediaTime, TimeValue mediaDuration, Fixed mediaRate)
  2640. ;
  2641.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2642.         Macro
  2643.         _InsertMediaIntoTrack
  2644.             move.w              #$0183,D0
  2645.             dc.w                $AAAA
  2646.         EndM
  2647.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2648.         IMPORT_CFM_FUNCTION InsertMediaIntoTrack
  2649.     ENDIF
  2650.  
  2651. ;
  2652. ; pascal OSErr InsertTrackSegment(Track srcTrack, Track dstTrack, TimeValue srcIn, TimeValue srcDuration, TimeValue dstIn)
  2653. ;
  2654.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2655.         Macro
  2656.         _InsertTrackSegment
  2657.             move.w              #$0085,D0
  2658.             dc.w                $AAAA
  2659.         EndM
  2660.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2661.         IMPORT_CFM_FUNCTION InsertTrackSegment
  2662.     ENDIF
  2663.  
  2664. ;
  2665. ; pascal OSErr InsertMovieSegment(Movie srcMovie, Movie dstMovie, TimeValue srcIn, TimeValue srcDuration, TimeValue dstIn)
  2666. ;
  2667.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2668.         Macro
  2669.         _InsertMovieSegment
  2670.             move.w              #$0086,D0
  2671.             dc.w                $AAAA
  2672.         EndM
  2673.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2674.         IMPORT_CFM_FUNCTION InsertMovieSegment
  2675.     ENDIF
  2676.  
  2677. ;
  2678. ; pascal OSErr InsertEmptyTrackSegment(Track dstTrack, TimeValue dstIn, TimeValue dstDuration)
  2679. ;
  2680.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2681.         Macro
  2682.         _InsertEmptyTrackSegment
  2683.             move.w              #$0087,D0
  2684.             dc.w                $AAAA
  2685.         EndM
  2686.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2687.         IMPORT_CFM_FUNCTION InsertEmptyTrackSegment
  2688.     ENDIF
  2689.  
  2690. ;
  2691. ; pascal OSErr InsertEmptyMovieSegment(Movie dstMovie, TimeValue dstIn, TimeValue dstDuration)
  2692. ;
  2693.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2694.         Macro
  2695.         _InsertEmptyMovieSegment
  2696.             move.w              #$0088,D0
  2697.             dc.w                $AAAA
  2698.         EndM
  2699.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2700.         IMPORT_CFM_FUNCTION InsertEmptyMovieSegment
  2701.     ENDIF
  2702.  
  2703. ;
  2704. ; pascal OSErr DeleteTrackSegment(Track theTrack, TimeValue startTime, TimeValue duration)
  2705. ;
  2706.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2707.         Macro
  2708.         _DeleteTrackSegment
  2709.             move.w              #$0089,D0
  2710.             dc.w                $AAAA
  2711.         EndM
  2712.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2713.         IMPORT_CFM_FUNCTION DeleteTrackSegment
  2714.     ENDIF
  2715.  
  2716. ;
  2717. ; pascal OSErr DeleteMovieSegment(Movie theMovie, TimeValue startTime, TimeValue duration)
  2718. ;
  2719.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2720.         Macro
  2721.         _DeleteMovieSegment
  2722.             move.w              #$008A,D0
  2723.             dc.w                $AAAA
  2724.         EndM
  2725.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2726.         IMPORT_CFM_FUNCTION DeleteMovieSegment
  2727.     ENDIF
  2728.  
  2729. ;
  2730. ; pascal OSErr ScaleTrackSegment(Track theTrack, TimeValue startTime, TimeValue oldDuration, TimeValue newDuration)
  2731. ;
  2732.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2733.         Macro
  2734.         _ScaleTrackSegment
  2735.             move.w              #$008B,D0
  2736.             dc.w                $AAAA
  2737.         EndM
  2738.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2739.         IMPORT_CFM_FUNCTION ScaleTrackSegment
  2740.     ENDIF
  2741.  
  2742. ;
  2743. ; pascal OSErr ScaleMovieSegment(Movie theMovie, TimeValue startTime, TimeValue oldDuration, TimeValue newDuration)
  2744. ;
  2745.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2746.         Macro
  2747.         _ScaleMovieSegment
  2748.             move.w              #$008C,D0
  2749.             dc.w                $AAAA
  2750.         EndM
  2751.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2752.         IMPORT_CFM_FUNCTION ScaleMovieSegment
  2753.     ENDIF
  2754.  
  2755.  
  2756. ; *************************
  2757. ;* Hi-level Editing Routines
  2758. ;*************************
  2759.  
  2760. ;
  2761. ; pascal Movie CutMovieSelection(Movie theMovie)
  2762. ;
  2763.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2764.         Macro
  2765.         _CutMovieSelection
  2766.             move.w              #$008D,D0
  2767.             dc.w                $AAAA
  2768.         EndM
  2769.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2770.         IMPORT_CFM_FUNCTION CutMovieSelection
  2771.     ENDIF
  2772.  
  2773. ;
  2774. ; pascal Movie CopyMovieSelection(Movie theMovie)
  2775. ;
  2776.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2777.         Macro
  2778.         _CopyMovieSelection
  2779.             move.w              #$008E,D0
  2780.             dc.w                $AAAA
  2781.         EndM
  2782.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2783.         IMPORT_CFM_FUNCTION CopyMovieSelection
  2784.     ENDIF
  2785.  
  2786. ;
  2787. ; pascal void PasteMovieSelection(Movie theMovie, Movie src)
  2788. ;
  2789.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2790.         Macro
  2791.         _PasteMovieSelection
  2792.             move.w              #$008F,D0
  2793.             dc.w                $AAAA
  2794.         EndM
  2795.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2796.         IMPORT_CFM_FUNCTION PasteMovieSelection
  2797.     ENDIF
  2798.  
  2799. ;
  2800. ; pascal void AddMovieSelection(Movie theMovie, Movie src)
  2801. ;
  2802.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2803.         Macro
  2804.         _AddMovieSelection
  2805.             move.w              #$0152,D0
  2806.             dc.w                $AAAA
  2807.         EndM
  2808.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2809.         IMPORT_CFM_FUNCTION AddMovieSelection
  2810.     ENDIF
  2811.  
  2812. ;
  2813. ; pascal void ClearMovieSelection(Movie theMovie)
  2814. ;
  2815.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2816.         Macro
  2817.         _ClearMovieSelection
  2818.             move.w              #$00E1,D0
  2819.             dc.w                $AAAA
  2820.         EndM
  2821.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2822.         IMPORT_CFM_FUNCTION ClearMovieSelection
  2823.     ENDIF
  2824.  
  2825. ;
  2826. ; pascal OSErr PasteHandleIntoMovie(Handle h, OSType handleType, Movie theMovie, long flags, ComponentInstance userComp)
  2827. ;
  2828.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2829.         Macro
  2830.         _PasteHandleIntoMovie
  2831.             move.w              #$00CB,D0
  2832.             dc.w                $AAAA
  2833.         EndM
  2834.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2835.         IMPORT_CFM_FUNCTION PasteHandleIntoMovie
  2836.     ENDIF
  2837.  
  2838. ;
  2839. ; pascal OSErr PutMovieIntoTypedHandle(Movie theMovie, Track targetTrack, OSType handleType, Handle publicMovie, TimeValue start, TimeValue dur, long flags, ComponentInstance userComp)
  2840. ;
  2841.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2842.         Macro
  2843.         _PutMovieIntoTypedHandle
  2844.             move.w              #$01CD,D0
  2845.             dc.w                $AAAA
  2846.         EndM
  2847.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2848.         IMPORT_CFM_FUNCTION PutMovieIntoTypedHandle
  2849.     ENDIF
  2850.  
  2851. ;
  2852. ; pascal Component IsScrapMovie(Track targetTrack)
  2853. ;
  2854.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2855.         Macro
  2856.         _IsScrapMovie
  2857.             move.w              #$00CC,D0
  2858.             dc.w                $AAAA
  2859.         EndM
  2860.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2861.         IMPORT_CFM_FUNCTION IsScrapMovie
  2862.     ENDIF
  2863.  
  2864. ; *************************
  2865. ;* Middle-level Editing Routines
  2866. ;*************************
  2867.  
  2868. ;
  2869. ; pascal OSErr CopyTrackSettings(Track srcTrack, Track dstTrack)
  2870. ;
  2871.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2872.         Macro
  2873.         _CopyTrackSettings
  2874.             move.w              #$0153,D0
  2875.             dc.w                $AAAA
  2876.         EndM
  2877.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2878.         IMPORT_CFM_FUNCTION CopyTrackSettings
  2879.     ENDIF
  2880.  
  2881. ;
  2882. ; pascal OSErr CopyMovieSettings(Movie srcMovie, Movie dstMovie)
  2883. ;
  2884.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2885.         Macro
  2886.         _CopyMovieSettings
  2887.             move.w              #$0154,D0
  2888.             dc.w                $AAAA
  2889.         EndM
  2890.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2891.         IMPORT_CFM_FUNCTION CopyMovieSettings
  2892.     ENDIF
  2893.  
  2894. ;
  2895. ; pascal OSErr AddEmptyTrackToMovie(Track srcTrack, Movie dstMovie, Handle dataRef, OSType dataRefType, Track *dstTrack)
  2896. ;
  2897.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2898.         Macro
  2899.         _AddEmptyTrackToMovie
  2900.             moveq               #116,D0
  2901.             dc.w                $AAAA
  2902.         EndM
  2903.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2904.         IMPORT_CFM_FUNCTION AddEmptyTrackToMovie
  2905.     ENDIF
  2906.  
  2907. ; *************************
  2908. ;* movie & track edit state routines
  2909. ;*************************
  2910.  
  2911. ;
  2912. ; pascal MovieEditState NewMovieEditState(Movie theMovie)
  2913. ;
  2914.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2915.         Macro
  2916.         _NewMovieEditState
  2917.             move.w              #$0104,D0
  2918.             dc.w                $AAAA
  2919.         EndM
  2920.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2921.         IMPORT_CFM_FUNCTION NewMovieEditState
  2922.     ENDIF
  2923.  
  2924. ;
  2925. ; pascal OSErr UseMovieEditState(Movie theMovie, MovieEditState toState)
  2926. ;
  2927.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2928.         Macro
  2929.         _UseMovieEditState
  2930.             move.w              #$0105,D0
  2931.             dc.w                $AAAA
  2932.         EndM
  2933.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2934.         IMPORT_CFM_FUNCTION UseMovieEditState
  2935.     ENDIF
  2936.  
  2937. ;
  2938. ; pascal OSErr DisposeMovieEditState(MovieEditState state)
  2939. ;
  2940.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2941.         Macro
  2942.         _DisposeMovieEditState
  2943.             move.w              #$0106,D0
  2944.             dc.w                $AAAA
  2945.         EndM
  2946.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2947.         IMPORT_CFM_FUNCTION DisposeMovieEditState
  2948.     ENDIF
  2949.  
  2950. ;
  2951. ; pascal TrackEditState NewTrackEditState(Track theTrack)
  2952. ;
  2953.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2954.         Macro
  2955.         _NewTrackEditState
  2956.             move.w              #$0107,D0
  2957.             dc.w                $AAAA
  2958.         EndM
  2959.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2960.         IMPORT_CFM_FUNCTION NewTrackEditState
  2961.     ENDIF
  2962.  
  2963. ;
  2964. ; pascal OSErr UseTrackEditState(Track theTrack, TrackEditState state)
  2965. ;
  2966.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2967.         Macro
  2968.         _UseTrackEditState
  2969.             move.w              #$0108,D0
  2970.             dc.w                $AAAA
  2971.         EndM
  2972.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2973.         IMPORT_CFM_FUNCTION UseTrackEditState
  2974.     ENDIF
  2975.  
  2976. ;
  2977. ; pascal OSErr DisposeTrackEditState(TrackEditState state)
  2978. ;
  2979.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2980.         Macro
  2981.         _DisposeTrackEditState
  2982.             move.w              #$0109,D0
  2983.             dc.w                $AAAA
  2984.         EndM
  2985.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  2986.         IMPORT_CFM_FUNCTION DisposeTrackEditState
  2987.     ENDIF
  2988.  
  2989. ; *************************
  2990. ;* track reference routines
  2991. ;*************************
  2992.  
  2993. ;
  2994. ; pascal OSErr AddTrackReference(Track theTrack, Track refTrack, OSType refType, long *addedIndex)
  2995. ;
  2996.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  2997.         Macro
  2998.         _AddTrackReference
  2999.             move.w              #$01F0,D0
  3000.             dc.w                $AAAA
  3001.         EndM
  3002.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3003.         IMPORT_CFM_FUNCTION AddTrackReference
  3004.     ENDIF
  3005.  
  3006. ;
  3007. ; pascal OSErr DeleteTrackReference(Track theTrack, OSType refType, long index)
  3008. ;
  3009.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3010.         Macro
  3011.         _DeleteTrackReference
  3012.             move.w              #$01F1,D0
  3013.             dc.w                $AAAA
  3014.         EndM
  3015.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3016.         IMPORT_CFM_FUNCTION DeleteTrackReference
  3017.     ENDIF
  3018.  
  3019. ;
  3020. ; pascal OSErr SetTrackReference(Track theTrack, Track refTrack, OSType refType, long index)
  3021. ;
  3022.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3023.         Macro
  3024.         _SetTrackReference
  3025.             move.w              #$01F2,D0
  3026.             dc.w                $AAAA
  3027.         EndM
  3028.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3029.         IMPORT_CFM_FUNCTION SetTrackReference
  3030.     ENDIF
  3031.  
  3032. ;
  3033. ; pascal Track GetTrackReference(Track theTrack, OSType refType, long index)
  3034. ;
  3035.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3036.         Macro
  3037.         _GetTrackReference
  3038.             move.w              #$01F3,D0
  3039.             dc.w                $AAAA
  3040.         EndM
  3041.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3042.         IMPORT_CFM_FUNCTION GetTrackReference
  3043.     ENDIF
  3044.  
  3045. ;
  3046. ; pascal OSType GetNextTrackReferenceType(Track theTrack, OSType refType)
  3047. ;
  3048.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3049.         Macro
  3050.         _GetNextTrackReferenceType
  3051.             move.w              #$01F4,D0
  3052.             dc.w                $AAAA
  3053.         EndM
  3054.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3055.         IMPORT_CFM_FUNCTION GetNextTrackReferenceType
  3056.     ENDIF
  3057.  
  3058. ;
  3059. ; pascal long GetTrackReferenceCount(Track theTrack, OSType refType)
  3060. ;
  3061.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3062.         Macro
  3063.         _GetTrackReferenceCount
  3064.             move.w              #$01F5,D0
  3065.             dc.w                $AAAA
  3066.         EndM
  3067.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3068.         IMPORT_CFM_FUNCTION GetTrackReferenceCount
  3069.     ENDIF
  3070.  
  3071.  
  3072. ; *************************
  3073. ;* high level file conversion routines
  3074. ;*************************
  3075.  
  3076. ;
  3077. ; pascal OSErr ConvertFileToMovieFile(const FSSpec *inputFile, const FSSpec *outputFile, OSType creator, ScriptCode scriptTag, short *resID, long flags, ComponentInstance userComp, MovieProgressUPP proc, long refCon)
  3078. ;
  3079.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3080.         Macro
  3081.         _ConvertFileToMovieFile
  3082.             move.w              #$01CB,D0
  3083.             dc.w                $AAAA
  3084.         EndM
  3085.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3086.         IMPORT_CFM_FUNCTION ConvertFileToMovieFile
  3087.     ENDIF
  3088.  
  3089. ;
  3090. ; pascal OSErr ConvertMovieToFile(Movie theMovie, Track onlyTrack, FSSpec *outputFile, OSType fileType, OSType creator, ScriptCode scriptTag, short *resID, long flags, ComponentInstance userComp)
  3091. ;
  3092.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3093.         Macro
  3094.         _ConvertMovieToFile
  3095.             move.w              #$01CC,D0
  3096.             dc.w                $AAAA
  3097.         EndM
  3098.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3099.         IMPORT_CFM_FUNCTION ConvertMovieToFile
  3100.     ENDIF
  3101.  
  3102. ; *************************
  3103. ;* Movie Timebase Conversion Routines
  3104. ;*************************
  3105.  
  3106. ;
  3107. ; pascal TimeValue TrackTimeToMediaTime(TimeValue value, Track theTrack)
  3108. ;
  3109.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3110.         Macro
  3111.         _TrackTimeToMediaTime
  3112.             move.w              #$0096,D0
  3113.             dc.w                $AAAA
  3114.         EndM
  3115.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3116.         IMPORT_CFM_FUNCTION TrackTimeToMediaTime
  3117.     ENDIF
  3118.  
  3119. ;
  3120. ; pascal Fixed GetTrackEditRate(Track theTrack, TimeValue atTime)
  3121. ;
  3122.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3123.         Macro
  3124.         _GetTrackEditRate
  3125.             move.w              #$0123,D0
  3126.             dc.w                $AAAA
  3127.         EndM
  3128.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3129.         IMPORT_CFM_FUNCTION GetTrackEditRate
  3130.     ENDIF
  3131.  
  3132.  
  3133. ; *************************
  3134. ;* Miscellaneous Routines
  3135. ;*************************
  3136.  
  3137.  
  3138. ;
  3139. ; pascal long GetMovieDataSize(Movie theMovie, TimeValue startTime, TimeValue duration)
  3140. ;
  3141.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3142.         Macro
  3143.         _GetMovieDataSize
  3144.             move.w              #$0098,D0
  3145.             dc.w                $AAAA
  3146.         EndM
  3147.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3148.         IMPORT_CFM_FUNCTION GetMovieDataSize
  3149.     ENDIF
  3150.  
  3151. ;
  3152. ; pascal long GetTrackDataSize(Track theTrack, TimeValue startTime, TimeValue duration)
  3153. ;
  3154.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3155.         Macro
  3156.         _GetTrackDataSize
  3157.             move.w              #$0149,D0
  3158.             dc.w                $AAAA
  3159.         EndM
  3160.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3161.         IMPORT_CFM_FUNCTION GetTrackDataSize
  3162.     ENDIF
  3163.  
  3164. ;
  3165. ; pascal long GetMediaDataSize(Media theMedia, TimeValue startTime, TimeValue duration)
  3166. ;
  3167.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3168.         Macro
  3169.         _GetMediaDataSize
  3170.             move.w              #$0099,D0
  3171.             dc.w                $AAAA
  3172.         EndM
  3173.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3174.         IMPORT_CFM_FUNCTION GetMediaDataSize
  3175.     ENDIF
  3176.  
  3177. ;
  3178. ; pascal Boolean PtInMovie(Movie theMovie, Point pt)
  3179. ;
  3180.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3181.         Macro
  3182.         _PtInMovie
  3183.             move.w              #$009A,D0
  3184.             dc.w                $AAAA
  3185.         EndM
  3186.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3187.         IMPORT_CFM_FUNCTION PtInMovie
  3188.     ENDIF
  3189.  
  3190. ;
  3191. ; pascal Boolean PtInTrack(Track theTrack, Point pt)
  3192. ;
  3193.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3194.         Macro
  3195.         _PtInTrack
  3196.             move.w              #$009B,D0
  3197.             dc.w                $AAAA
  3198.         EndM
  3199.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3200.         IMPORT_CFM_FUNCTION PtInTrack
  3201.     ENDIF
  3202.  
  3203.  
  3204. ; *************************
  3205. ;* Group Selection Routines
  3206. ;*************************
  3207.  
  3208.  
  3209. ;
  3210. ; pascal void SetMovieLanguage(Movie theMovie, long language)
  3211. ;
  3212.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3213.         Macro
  3214.         _SetMovieLanguage
  3215.             move.w              #$009C,D0
  3216.             dc.w                $AAAA
  3217.         EndM
  3218.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3219.         IMPORT_CFM_FUNCTION SetMovieLanguage
  3220.     ENDIF
  3221.  
  3222.  
  3223. ; *************************
  3224. ;* User Data
  3225. ;*************************
  3226.  
  3227.  
  3228. ;
  3229. ; pascal OSErr GetUserData(UserData theUserData, Handle data, OSType udType, long index)
  3230. ;
  3231.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3232.         Macro
  3233.         _GetUserData
  3234.             move.w              #$009E,D0
  3235.             dc.w                $AAAA
  3236.         EndM
  3237.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3238.         IMPORT_CFM_FUNCTION GetUserData
  3239.     ENDIF
  3240.  
  3241. ;
  3242. ; pascal OSErr AddUserData(UserData theUserData, Handle data, OSType udType)
  3243. ;
  3244.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3245.         Macro
  3246.         _AddUserData
  3247.             move.w              #$009F,D0
  3248.             dc.w                $AAAA
  3249.         EndM
  3250.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3251.         IMPORT_CFM_FUNCTION AddUserData
  3252.     ENDIF
  3253.  
  3254. ;
  3255. ; pascal OSErr RemoveUserData(UserData theUserData, OSType udType, long index)
  3256. ;
  3257.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3258.         Macro
  3259.         _RemoveUserData
  3260.             move.w              #$00A0,D0
  3261.             dc.w                $AAAA
  3262.         EndM
  3263.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3264.         IMPORT_CFM_FUNCTION RemoveUserData
  3265.     ENDIF
  3266.  
  3267. ;
  3268. ; pascal short CountUserDataType(UserData theUserData, OSType udType)
  3269. ;
  3270.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3271.         Macro
  3272.         _CountUserDataType
  3273.             move.w              #$014B,D0
  3274.             dc.w                $AAAA
  3275.         EndM
  3276.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3277.         IMPORT_CFM_FUNCTION CountUserDataType
  3278.     ENDIF
  3279.  
  3280. ;
  3281. ; pascal long GetNextUserDataType(UserData theUserData, OSType udType)
  3282. ;
  3283.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3284.         Macro
  3285.         _GetNextUserDataType
  3286.             move.w              #$01A5,D0
  3287.             dc.w                $AAAA
  3288.         EndM
  3289.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3290.         IMPORT_CFM_FUNCTION GetNextUserDataType
  3291.     ENDIF
  3292.  
  3293. ;
  3294. ; pascal OSErr GetUserDataItem(UserData theUserData, void *data, long size, OSType udType, long index)
  3295. ;
  3296.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3297.         Macro
  3298.         _GetUserDataItem
  3299.             move.w              #$0126,D0
  3300.             dc.w                $AAAA
  3301.         EndM
  3302.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3303.         IMPORT_CFM_FUNCTION GetUserDataItem
  3304.     ENDIF
  3305.  
  3306. ;
  3307. ; pascal OSErr SetUserDataItem(UserData theUserData, void *data, long size, OSType udType, long index)
  3308. ;
  3309.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3310.         Macro
  3311.         _SetUserDataItem
  3312.             move.w              #$012E,D0
  3313.             dc.w                $AAAA
  3314.         EndM
  3315.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3316.         IMPORT_CFM_FUNCTION SetUserDataItem
  3317.     ENDIF
  3318.  
  3319. ;
  3320. ; pascal OSErr AddUserDataText(UserData theUserData, Handle data, OSType udType, long index, short itlRegionTag)
  3321. ;
  3322.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3323.         Macro
  3324.         _AddUserDataText
  3325.             move.w              #$014C,D0
  3326.             dc.w                $AAAA
  3327.         EndM
  3328.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3329.         IMPORT_CFM_FUNCTION AddUserDataText
  3330.     ENDIF
  3331.  
  3332. ;
  3333. ; pascal OSErr GetUserDataText(UserData theUserData, Handle data, OSType udType, long index, short itlRegionTag)
  3334. ;
  3335.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3336.         Macro
  3337.         _GetUserDataText
  3338.             move.w              #$014D,D0
  3339.             dc.w                $AAAA
  3340.         EndM
  3341.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3342.         IMPORT_CFM_FUNCTION GetUserDataText
  3343.     ENDIF
  3344.  
  3345. ;
  3346. ; pascal OSErr RemoveUserDataText(UserData theUserData, OSType udType, long index, short itlRegionTag)
  3347. ;
  3348.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3349.         Macro
  3350.         _RemoveUserDataText
  3351.             move.w              #$014E,D0
  3352.             dc.w                $AAAA
  3353.         EndM
  3354.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3355.         IMPORT_CFM_FUNCTION RemoveUserDataText
  3356.     ENDIF
  3357.  
  3358. ;
  3359. ; pascal OSErr NewUserData(UserData *theUserData)
  3360. ;
  3361.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3362.         Macro
  3363.         _NewUserData
  3364.             move.w              #$012F,D0
  3365.             dc.w                $AAAA
  3366.         EndM
  3367.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3368.         IMPORT_CFM_FUNCTION NewUserData
  3369.     ENDIF
  3370.  
  3371. ;
  3372. ; pascal OSErr DisposeUserData(UserData theUserData)
  3373. ;
  3374.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3375.         Macro
  3376.         _DisposeUserData
  3377.             move.w              #$0130,D0
  3378.             dc.w                $AAAA
  3379.         EndM
  3380.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3381.         IMPORT_CFM_FUNCTION DisposeUserData
  3382.     ENDIF
  3383.  
  3384. ;
  3385. ; pascal OSErr NewUserDataFromHandle(Handle h, UserData *theUserData)
  3386. ;
  3387.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3388.         Macro
  3389.         _NewUserDataFromHandle
  3390.             move.w              #$0131,D0
  3391.             dc.w                $AAAA
  3392.         EndM
  3393.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3394.         IMPORT_CFM_FUNCTION NewUserDataFromHandle
  3395.     ENDIF
  3396.  
  3397. ;
  3398. ; pascal OSErr PutUserDataIntoHandle(UserData theUserData, Handle h)
  3399. ;
  3400.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3401.         Macro
  3402.         _PutUserDataIntoHandle
  3403.             move.w              #$0132,D0
  3404.             dc.w                $AAAA
  3405.         EndM
  3406.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3407.         IMPORT_CFM_FUNCTION PutUserDataIntoHandle
  3408.     ENDIF
  3409.  
  3410. ;
  3411. ; pascal void GetMediaNextInterestingTime(Media theMedia, short interestingTimeFlags, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3412. ;
  3413.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3414.         Macro
  3415.         _GetMediaNextInterestingTime
  3416.             move.w              #$016D,D0
  3417.             dc.w                $AAAA
  3418.         EndM
  3419.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3420.         IMPORT_CFM_FUNCTION GetMediaNextInterestingTime
  3421.     ENDIF
  3422.  
  3423. ;
  3424. ; pascal void GetTrackNextInterestingTime(Track theTrack, short interestingTimeFlags, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3425. ;
  3426.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3427.         Macro
  3428.         _GetTrackNextInterestingTime
  3429.             move.w              #$00E2,D0
  3430.             dc.w                $AAAA
  3431.         EndM
  3432.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3433.         IMPORT_CFM_FUNCTION GetTrackNextInterestingTime
  3434.     ENDIF
  3435.  
  3436. ;
  3437. ; pascal void GetMovieNextInterestingTime(Movie theMovie, short interestingTimeFlags, short numMediaTypes, const OSType *whichMediaTypes, TimeValue time, Fixed rate, TimeValue *interestingTime, TimeValue *interestingDuration)
  3438. ;
  3439.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3440.         Macro
  3441.         _GetMovieNextInterestingTime
  3442.             move.w              #$010E,D0
  3443.             dc.w                $AAAA
  3444.         EndM
  3445.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3446.         IMPORT_CFM_FUNCTION GetMovieNextInterestingTime
  3447.     ENDIF
  3448.  
  3449.  
  3450. ;
  3451. ; pascal OSErr CreateMovieFile(const FSSpec *fileSpec, OSType creator, ScriptCode scriptTag, long createMovieFileFlags, short *resRefNum, Movie *newmovie)
  3452. ;
  3453.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3454.         Macro
  3455.         _CreateMovieFile
  3456.             move.w              #$0191,D0
  3457.             dc.w                $AAAA
  3458.         EndM
  3459.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3460.         IMPORT_CFM_FUNCTION CreateMovieFile
  3461.     ENDIF
  3462.  
  3463. ;
  3464. ; pascal OSErr OpenMovieFile(const FSSpec *fileSpec, short *resRefNum, SInt8 permission)
  3465. ;
  3466.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3467.         Macro
  3468.         _OpenMovieFile
  3469.             move.w              #$0192,D0
  3470.             dc.w                $AAAA
  3471.         EndM
  3472.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3473.         IMPORT_CFM_FUNCTION OpenMovieFile
  3474.     ENDIF
  3475.  
  3476. ;
  3477. ; pascal OSErr CloseMovieFile(short resRefNum)
  3478. ;
  3479.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3480.         Macro
  3481.         _CloseMovieFile
  3482.             move.w              #$00D5,D0
  3483.             dc.w                $AAAA
  3484.         EndM
  3485.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3486.         IMPORT_CFM_FUNCTION CloseMovieFile
  3487.     ENDIF
  3488.  
  3489. ;
  3490. ; pascal OSErr DeleteMovieFile(const FSSpec *fileSpec)
  3491. ;
  3492.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3493.         Macro
  3494.         _DeleteMovieFile
  3495.             move.w              #$0175,D0
  3496.             dc.w                $AAAA
  3497.         EndM
  3498.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3499.         IMPORT_CFM_FUNCTION DeleteMovieFile
  3500.     ENDIF
  3501.  
  3502. ;
  3503. ; pascal OSErr NewMovieFromFile(Movie *theMovie, short resRefNum, short *resId, StringPtr resName, short newMovieFlags, Boolean *dataRefWasChanged)
  3504. ;
  3505.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3506.         Macro
  3507.         _NewMovieFromFile
  3508.             move.w              #$00F0,D0
  3509.             dc.w                $AAAA
  3510.         EndM
  3511.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3512.         IMPORT_CFM_FUNCTION NewMovieFromFile
  3513.     ENDIF
  3514.  
  3515. ;
  3516. ; pascal OSErr NewMovieFromHandle(Movie *theMovie, Handle h, short newMovieFlags, Boolean *dataRefWasChanged)
  3517. ;
  3518.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3519.         Macro
  3520.         _NewMovieFromHandle
  3521.             move.w              #$00F1,D0
  3522.             dc.w                $AAAA
  3523.         EndM
  3524.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3525.         IMPORT_CFM_FUNCTION NewMovieFromHandle
  3526.     ENDIF
  3527.  
  3528. ;
  3529. ; pascal OSErr NewMovieFromDataFork(Movie *theMovie, short fRefNum, long fileOffset, short newMovieFlags, Boolean *dataRefWasChanged)
  3530. ;
  3531.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3532.         Macro
  3533.         _NewMovieFromDataFork
  3534.             move.w              #$01B3,D0
  3535.             dc.w                $AAAA
  3536.         EndM
  3537.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3538.         IMPORT_CFM_FUNCTION NewMovieFromDataFork
  3539.     ENDIF
  3540.  
  3541. ;
  3542. ; pascal OSErr NewMovieFromUserProc(Movie *m, short flags, Boolean *dataRefWasChanged, GetMovieUPP getProc, void *refCon, Handle defaultDataRef, OSType dataRefType)
  3543. ;
  3544.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3545.         Macro
  3546.         _NewMovieFromUserProc
  3547.             move.w              #$01EC,D0
  3548.             dc.w                $AAAA
  3549.         EndM
  3550.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3551.         IMPORT_CFM_FUNCTION NewMovieFromUserProc
  3552.     ENDIF
  3553.  
  3554. ;
  3555. ; pascal OSErr NewMovieFromDataRef(Movie *m, short flags, short *id, Handle dataRef, OSType dataRefType)
  3556. ;
  3557.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3558.         Macro
  3559.         _NewMovieFromDataRef
  3560.             move.w              #$0220,D0
  3561.             dc.w                $AAAA
  3562.         EndM
  3563.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3564.         IMPORT_CFM_FUNCTION NewMovieFromDataRef
  3565.     ENDIF
  3566.  
  3567. ;
  3568. ; pascal OSErr AddMovieResource(Movie theMovie, short resRefNum, short *resId, ConstStr255Param resName)
  3569. ;
  3570.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3571.         Macro
  3572.         _AddMovieResource
  3573.             move.w              #$00D7,D0
  3574.             dc.w                $AAAA
  3575.         EndM
  3576.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3577.         IMPORT_CFM_FUNCTION AddMovieResource
  3578.     ENDIF
  3579.  
  3580. ;
  3581. ; pascal OSErr UpdateMovieResource(Movie theMovie, short resRefNum, short resId, ConstStr255Param resName)
  3582. ;
  3583.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3584.         Macro
  3585.         _UpdateMovieResource
  3586.             move.w              #$00D8,D0
  3587.             dc.w                $AAAA
  3588.         EndM
  3589.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3590.         IMPORT_CFM_FUNCTION UpdateMovieResource
  3591.     ENDIF
  3592.  
  3593. ;
  3594. ; pascal OSErr RemoveMovieResource(short resRefNum, short resId)
  3595. ;
  3596.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3597.         Macro
  3598.         _RemoveMovieResource
  3599.             move.w              #$0176,D0
  3600.             dc.w                $AAAA
  3601.         EndM
  3602.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3603.         IMPORT_CFM_FUNCTION RemoveMovieResource
  3604.     ENDIF
  3605.  
  3606. ;
  3607. ; pascal Boolean HasMovieChanged(Movie theMovie)
  3608. ;
  3609.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3610.         Macro
  3611.         _HasMovieChanged
  3612.             move.w              #$00D9,D0
  3613.             dc.w                $AAAA
  3614.         EndM
  3615.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3616.         IMPORT_CFM_FUNCTION HasMovieChanged
  3617.     ENDIF
  3618.  
  3619. ;
  3620. ; pascal void ClearMovieChanged(Movie theMovie)
  3621. ;
  3622.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3623.         Macro
  3624.         _ClearMovieChanged
  3625.             move.w              #$0113,D0
  3626.             dc.w                $AAAA
  3627.         EndM
  3628.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3629.         IMPORT_CFM_FUNCTION ClearMovieChanged
  3630.     ENDIF
  3631.  
  3632. ;
  3633. ; pascal OSErr SetMovieDefaultDataRef(Movie theMovie, Handle dataRef, OSType dataRefType)
  3634. ;
  3635.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3636.         Macro
  3637.         _SetMovieDefaultDataRef
  3638.             move.w              #$01C1,D0
  3639.             dc.w                $AAAA
  3640.         EndM
  3641.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3642.         IMPORT_CFM_FUNCTION SetMovieDefaultDataRef
  3643.     ENDIF
  3644.  
  3645. ;
  3646. ; pascal OSErr GetMovieDefaultDataRef(Movie theMovie, Handle *dataRef, OSType *dataRefType)
  3647. ;
  3648.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3649.         Macro
  3650.         _GetMovieDefaultDataRef
  3651.             move.w              #$01D2,D0
  3652.             dc.w                $AAAA
  3653.         EndM
  3654.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3655.         IMPORT_CFM_FUNCTION GetMovieDefaultDataRef
  3656.     ENDIF
  3657.  
  3658. ;
  3659. ; pascal OSErr SetMovieColorTable(Movie theMovie, CTabHandle ctab)
  3660. ;
  3661.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3662.         Macro
  3663.         _SetMovieColorTable
  3664.             move.w              #$0205,D0
  3665.             dc.w                $AAAA
  3666.         EndM
  3667.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3668.         IMPORT_CFM_FUNCTION SetMovieColorTable
  3669.     ENDIF
  3670.  
  3671. ;
  3672. ; pascal OSErr GetMovieColorTable(Movie theMovie, CTabHandle *ctab)
  3673. ;
  3674.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3675.         Macro
  3676.         _GetMovieColorTable
  3677.             move.w              #$0206,D0
  3678.             dc.w                $AAAA
  3679.         EndM
  3680.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3681.         IMPORT_CFM_FUNCTION GetMovieColorTable
  3682.     ENDIF
  3683.  
  3684. ;
  3685. ; pascal void FlattenMovie(Movie theMovie, long movieFlattenFlags, const FSSpec *theFile, OSType creator, ScriptCode scriptTag, long createMovieFileFlags, short *resId, ConstStr255Param resName)
  3686. ;
  3687.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3688.         Macro
  3689.         _FlattenMovie
  3690.             move.w              #$019B,D0
  3691.             dc.w                $AAAA
  3692.         EndM
  3693.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3694.         IMPORT_CFM_FUNCTION FlattenMovie
  3695.     ENDIF
  3696.  
  3697. ;
  3698. ; pascal Movie FlattenMovieData(Movie theMovie, long movieFlattenFlags, const FSSpec *theFile, OSType creator, ScriptCode scriptTag, long createMovieFileFlags)
  3699. ;
  3700.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3701.         Macro
  3702.         _FlattenMovieData
  3703.             move.w              #$019C,D0
  3704.             dc.w                $AAAA
  3705.         EndM
  3706.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3707.         IMPORT_CFM_FUNCTION FlattenMovieData
  3708.     ENDIF
  3709.  
  3710. ;
  3711. ; pascal void SetMovieProgressProc(Movie theMovie, MovieProgressUPP p, long refcon)
  3712. ;
  3713.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3714.         Macro
  3715.         _SetMovieProgressProc
  3716.             move.w              #$019A,D0
  3717.             dc.w                $AAAA
  3718.         EndM
  3719.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3720.         IMPORT_CFM_FUNCTION SetMovieProgressProc
  3721.     ENDIF
  3722.  
  3723. ;
  3724. ; pascal OSErr MovieSearchText(Movie theMovie, Ptr text, long size, long searchFlags, Track *searchTrack, TimeValue *searchTime, long *searchOffset)
  3725. ;
  3726.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3727.         Macro
  3728.         _MovieSearchText
  3729.             move.w              #$0207,D0
  3730.             dc.w                $AAAA
  3731.         EndM
  3732.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3733.         IMPORT_CFM_FUNCTION MovieSearchText
  3734.     ENDIF
  3735.  
  3736. ;
  3737. ; pascal void GetPosterBox(Movie theMovie, Rect *boxRect)
  3738. ;
  3739.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3740.         Macro
  3741.         _GetPosterBox
  3742.             move.w              #$016F,D0
  3743.             dc.w                $AAAA
  3744.         EndM
  3745.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3746.         IMPORT_CFM_FUNCTION GetPosterBox
  3747.     ENDIF
  3748.  
  3749. ;
  3750. ; pascal void SetPosterBox(Movie theMovie, const Rect *boxRect)
  3751. ;
  3752.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3753.         Macro
  3754.         _SetPosterBox
  3755.             move.w              #$0170,D0
  3756.             dc.w                $AAAA
  3757.         EndM
  3758.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3759.         IMPORT_CFM_FUNCTION SetPosterBox
  3760.     ENDIF
  3761.  
  3762. ;
  3763. ; pascal RgnHandle GetMovieSegmentDisplayBoundsRgn(Movie theMovie, TimeValue time, TimeValue duration)
  3764. ;
  3765.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3766.         Macro
  3767.         _GetMovieSegmentDisplayBoundsRgn
  3768.             move.w              #$016C,D0
  3769.             dc.w                $AAAA
  3770.         EndM
  3771.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3772.         IMPORT_CFM_FUNCTION GetMovieSegmentDisplayBoundsRgn
  3773.     ENDIF
  3774.  
  3775. ;
  3776. ; pascal RgnHandle GetTrackSegmentDisplayBoundsRgn(Track theTrack, TimeValue time, TimeValue duration)
  3777. ;
  3778.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3779.         Macro
  3780.         _GetTrackSegmentDisplayBoundsRgn
  3781.             move.w              #$016B,D0
  3782.             dc.w                $AAAA
  3783.         EndM
  3784.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3785.         IMPORT_CFM_FUNCTION GetTrackSegmentDisplayBoundsRgn
  3786.     ENDIF
  3787.  
  3788. ;
  3789. ; pascal void SetMovieCoverProcs(Movie theMovie, MovieRgnCoverUPP uncoverProc, MovieRgnCoverUPP coverProc, long refcon)
  3790. ;
  3791.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3792.         Macro
  3793.         _SetMovieCoverProcs
  3794.             move.w              #$0179,D0
  3795.             dc.w                $AAAA
  3796.         EndM
  3797.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3798.         IMPORT_CFM_FUNCTION SetMovieCoverProcs
  3799.     ENDIF
  3800.  
  3801. ;
  3802. ; pascal OSErr GetMovieCoverProcs(Movie theMovie, MovieRgnCoverUPP *uncoverProc, MovieRgnCoverUPP *coverProc, long *refcon)
  3803. ;
  3804.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3805.         Macro
  3806.         _GetMovieCoverProcs
  3807.             move.w              #$01DD,D0
  3808.             dc.w                $AAAA
  3809.         EndM
  3810.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3811.         IMPORT_CFM_FUNCTION GetMovieCoverProcs
  3812.     ENDIF
  3813.  
  3814. ;
  3815. ; pascal ComponentResult GetTrackStatus(Track theTrack)
  3816. ;
  3817.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3818.         Macro
  3819.         _GetTrackStatus
  3820.             move.w              #$0172,D0
  3821.             dc.w                $AAAA
  3822.         EndM
  3823.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3824.         IMPORT_CFM_FUNCTION GetTrackStatus
  3825.     ENDIF
  3826.  
  3827. ;
  3828. ; pascal ComponentResult GetMovieStatus(Movie theMovie, Track *firstProblemTrack)
  3829. ;
  3830.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3831.         Macro
  3832.         _GetMovieStatus
  3833.             move.w              #$0173,D0
  3834.             dc.w                $AAAA
  3835.         EndM
  3836.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3837.         IMPORT_CFM_FUNCTION GetMovieStatus
  3838.     ENDIF
  3839.  
  3840. ; ***
  3841. ;    Movie Controller support routines
  3842. ;***
  3843.  
  3844. ;
  3845. ; pascal ComponentInstance NewMovieController(Movie theMovie, const Rect *movieRect, long someFlags)
  3846. ;
  3847.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3848.         Macro
  3849.         _NewMovieController
  3850.             move.w              #$018A,D0
  3851.             dc.w                $AAAA
  3852.         EndM
  3853.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3854.         IMPORT_CFM_FUNCTION NewMovieController
  3855.     ENDIF
  3856.  
  3857. ;
  3858. ; pascal void DisposeMovieController(ComponentInstance mc)
  3859. ;
  3860.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3861.         Macro
  3862.         _DisposeMovieController
  3863.             move.w              #$018B,D0
  3864.             dc.w                $AAAA
  3865.         EndM
  3866.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3867.         IMPORT_CFM_FUNCTION DisposeMovieController
  3868.     ENDIF
  3869.  
  3870. ;
  3871. ; pascal void ShowMovieInformation(Movie theMovie, ModalFilterUPP filterProc, long refCon)
  3872. ;
  3873.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3874.         Macro
  3875.         _ShowMovieInformation
  3876.             move.w              #$0209,D0
  3877.             dc.w                $AAAA
  3878.         EndM
  3879.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3880.         IMPORT_CFM_FUNCTION ShowMovieInformation
  3881.     ENDIF
  3882.  
  3883.  
  3884. ; *****
  3885. ;    Scrap routines
  3886. ;****
  3887.  
  3888. ;
  3889. ; pascal OSErr PutMovieOnScrap(Movie theMovie, long movieScrapFlags)
  3890. ;
  3891.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3892.         Macro
  3893.         _PutMovieOnScrap
  3894.             move.w              #$018C,D0
  3895.             dc.w                $AAAA
  3896.         EndM
  3897.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3898.         IMPORT_CFM_FUNCTION PutMovieOnScrap
  3899.     ENDIF
  3900.  
  3901. ;
  3902. ; pascal Movie NewMovieFromScrap(long newMovieFlags)
  3903. ;
  3904.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3905.         Macro
  3906.         _NewMovieFromScrap
  3907.             move.w              #$018D,D0
  3908.             dc.w                $AAAA
  3909.         EndM
  3910.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3911.         IMPORT_CFM_FUNCTION NewMovieFromScrap
  3912.     ENDIF
  3913.  
  3914.  
  3915. ; *****
  3916. ;    DataRef routines
  3917. ;****
  3918.  
  3919.  
  3920. ;
  3921. ; pascal OSErr GetMediaDataRef(Media theMedia, short index, Handle *dataRef, OSType *dataRefType, long *dataRefAttributes)
  3922. ;
  3923.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3924.         Macro
  3925.         _GetMediaDataRef
  3926.             move.w              #$0197,D0
  3927.             dc.w                $AAAA
  3928.         EndM
  3929.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3930.         IMPORT_CFM_FUNCTION GetMediaDataRef
  3931.     ENDIF
  3932.  
  3933. ;
  3934. ; pascal OSErr SetMediaDataRef(Media theMedia, short index, Handle dataRef, OSType dataRefType)
  3935. ;
  3936.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3937.         Macro
  3938.         _SetMediaDataRef
  3939.             move.w              #$01C9,D0
  3940.             dc.w                $AAAA
  3941.         EndM
  3942.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3943.         IMPORT_CFM_FUNCTION SetMediaDataRef
  3944.     ENDIF
  3945.  
  3946. ;
  3947. ; pascal OSErr SetMediaDataRefAttributes(Media theMedia, short index, long dataRefAttributes)
  3948. ;
  3949.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3950.         Macro
  3951.         _SetMediaDataRefAttributes
  3952.             move.w              #$01CA,D0
  3953.             dc.w                $AAAA
  3954.         EndM
  3955.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3956.         IMPORT_CFM_FUNCTION SetMediaDataRefAttributes
  3957.     ENDIF
  3958.  
  3959. ;
  3960. ; pascal OSErr AddMediaDataRef(Media theMedia, short *index, Handle dataRef, OSType dataRefType)
  3961. ;
  3962.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3963.         Macro
  3964.         _AddMediaDataRef
  3965.             move.w              #$0198,D0
  3966.             dc.w                $AAAA
  3967.         EndM
  3968.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3969.         IMPORT_CFM_FUNCTION AddMediaDataRef
  3970.     ENDIF
  3971.  
  3972. ;
  3973. ; pascal OSErr GetMediaDataRefCount(Media theMedia, short *count)
  3974. ;
  3975.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3976.         Macro
  3977.         _GetMediaDataRefCount
  3978.             move.w              #$0199,D0
  3979.             dc.w                $AAAA
  3980.         EndM
  3981.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3982.         IMPORT_CFM_FUNCTION GetMediaDataRefCount
  3983.     ENDIF
  3984.  
  3985. ; *****
  3986. ;    Playback hint routines
  3987. ;****
  3988.  
  3989. ;
  3990. ; pascal void SetMoviePlayHints(Movie theMovie, long flags, long flagsMask)
  3991. ;
  3992.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  3993.         Macro
  3994.         _SetMoviePlayHints
  3995.             move.w              #$01A1,D0
  3996.             dc.w                $AAAA
  3997.         EndM
  3998.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  3999.         IMPORT_CFM_FUNCTION SetMoviePlayHints
  4000.     ENDIF
  4001.  
  4002. ;
  4003. ; pascal void SetMediaPlayHints(Media theMedia, long flags, long flagsMask)
  4004. ;
  4005.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4006.         Macro
  4007.         _SetMediaPlayHints
  4008.             move.w              #$01A2,D0
  4009.             dc.w                $AAAA
  4010.         EndM
  4011.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4012.         IMPORT_CFM_FUNCTION SetMediaPlayHints
  4013.     ENDIF
  4014.  
  4015. ; *****
  4016. ;    Load time track hints
  4017. ;****
  4018.  
  4019.  
  4020. preloadAlways                    EQU        $00000001
  4021. preloadOnlyIfEnabled            EQU        $00000002
  4022. ;
  4023. ; pascal void SetTrackLoadSettings(Track theTrack, TimeValue preloadTime, TimeValue preloadDuration, long preloadFlags, long defaultHints)
  4024. ;
  4025.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4026.         Macro
  4027.         _SetTrackLoadSettings
  4028.             move.w              #$01E3,D0
  4029.             dc.w                $AAAA
  4030.         EndM
  4031.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4032.         IMPORT_CFM_FUNCTION SetTrackLoadSettings
  4033.     ENDIF
  4034.  
  4035. ;
  4036. ; pascal void GetTrackLoadSettings(Track theTrack, TimeValue *preloadTime, TimeValue *preloadDuration, long *preloadFlags, long *defaultHints)
  4037. ;
  4038.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4039.         Macro
  4040.         _GetTrackLoadSettings
  4041.             move.w              #$01E4,D0
  4042.             dc.w                $AAAA
  4043.         EndM
  4044.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4045.         IMPORT_CFM_FUNCTION GetTrackLoadSettings
  4046.     ENDIF
  4047.  
  4048. ; *****
  4049. ;    Big screen TV
  4050. ;****
  4051.  
  4052.  
  4053. fullScreenHideCursor            EQU        $00000001
  4054. fullScreenAllowEvents            EQU        $00000002
  4055. fullScreenDontChangeMenuBar        EQU        $00000004
  4056. fullScreenPreflightSize            EQU        $00000008
  4057. ;
  4058. ; pascal OSErr BeginFullScreen(Ptr *restoreState, GDHandle whichGD, short *desiredWidth, short *desiredHeight, WindowPtr *newWindow, RGBColor *eraseColor, long flags)
  4059. ;
  4060.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4061.         Macro
  4062.         _BeginFullScreen
  4063.             move.w              #$0233,D0
  4064.             dc.w                $AAAA
  4065.         EndM
  4066.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4067.         IMPORT_CFM_FUNCTION BeginFullScreen
  4068.     ENDIF
  4069.  
  4070. ;
  4071. ; pascal OSErr EndFullScreen(Ptr fullState, long flags)
  4072. ;
  4073.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4074.         Macro
  4075.         _EndFullScreen
  4076.             move.w              #$0234,D0
  4077.             dc.w                $AAAA
  4078.         EndM
  4079.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4080.         IMPORT_CFM_FUNCTION EndFullScreen
  4081.     ENDIF
  4082.  
  4083. ; *****
  4084. ;    Sprite Toolbox
  4085. ;****
  4086.  
  4087.  
  4088. kBackgroundSpriteLayerNum        EQU        32767
  4089. ;   Sprite Properties
  4090.  
  4091. kSpritePropertyMatrix            EQU        1
  4092. kSpritePropertyImageDescription    EQU        2
  4093. kSpritePropertyImageDataPtr        EQU        3
  4094. kSpritePropertyVisible            EQU        4
  4095. kSpritePropertyLayer            EQU        5
  4096. kSpritePropertyGraphicsMode        EQU        6
  4097. kSpritePropertyImageIndex        EQU        100
  4098. kSpriteTrackPropertyBackgroundColor EQU    101
  4099. kSpriteTrackPropertyOffscreenBitDepth EQU 102
  4100. kSpriteTrackPropertySampleFormat EQU    103
  4101. ;  flagsIn for SpriteWorldIdle
  4102.  
  4103. kOnlyDrawToSpriteWorld            EQU        $00000001
  4104. kSpriteWorldPreflight            EQU        $00000002
  4105. ;  flagsOut for SpriteWorldIdle
  4106.  
  4107. kSpriteWorldDidDraw                EQU        $00000001
  4108. kSpriteWorldNeedsToDraw            EQU        $00000002
  4109. ;  flags for sprite track sample format
  4110.  
  4111. kKeyFrameAndSingleOverride        EQU        $00000002
  4112. kKeyFrameAndAllOverrides        EQU        $00000004
  4113. ;
  4114. ; pascal OSErr NewSpriteWorld(SpriteWorld *newSpriteWorld, GWorldPtr destination, GWorldPtr spriteLayer, RGBColor *backgroundColor, GWorldPtr background)
  4115. ;
  4116.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4117.         Macro
  4118.         _NewSpriteWorld
  4119.             move.w              #$0239,D0
  4120.             dc.w                $AAAA
  4121.         EndM
  4122.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4123.         IMPORT_CFM_FUNCTION NewSpriteWorld
  4124.     ENDIF
  4125.  
  4126. ;
  4127. ; pascal void DisposeSpriteWorld(SpriteWorld theSpriteWorld)
  4128. ;
  4129.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4130.         Macro
  4131.         _DisposeSpriteWorld
  4132.             move.w              #$023A,D0
  4133.             dc.w                $AAAA
  4134.         EndM
  4135.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4136.         IMPORT_CFM_FUNCTION DisposeSpriteWorld
  4137.     ENDIF
  4138.  
  4139. ;
  4140. ; pascal OSErr SetSpriteWorldClip(SpriteWorld theSpriteWorld, RgnHandle clipRgn)
  4141. ;
  4142.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4143.         Macro
  4144.         _SetSpriteWorldClip
  4145.             move.w              #$023B,D0
  4146.             dc.w                $AAAA
  4147.         EndM
  4148.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4149.         IMPORT_CFM_FUNCTION SetSpriteWorldClip
  4150.     ENDIF
  4151.  
  4152. ;
  4153. ; pascal OSErr SetSpriteWorldMatrix(SpriteWorld theSpriteWorld, const MatrixRecord *matrix)
  4154. ;
  4155.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4156.         Macro
  4157.         _SetSpriteWorldMatrix
  4158.             move.w              #$023C,D0
  4159.             dc.w                $AAAA
  4160.         EndM
  4161.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4162.         IMPORT_CFM_FUNCTION SetSpriteWorldMatrix
  4163.     ENDIF
  4164.  
  4165. ;
  4166. ; pascal OSErr SpriteWorldIdle(SpriteWorld theSpriteWorld, long flagsIn, long *flagsOut)
  4167. ;
  4168.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4169.         Macro
  4170.         _SpriteWorldIdle
  4171.             move.w              #$023D,D0
  4172.             dc.w                $AAAA
  4173.         EndM
  4174.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4175.         IMPORT_CFM_FUNCTION SpriteWorldIdle
  4176.     ENDIF
  4177.  
  4178. ;
  4179. ; pascal OSErr InvalidateSpriteWorld(SpriteWorld theSpriteWorld, Rect *invalidArea)
  4180. ;
  4181.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4182.         Macro
  4183.         _InvalidateSpriteWorld
  4184.             move.w              #$023E,D0
  4185.             dc.w                $AAAA
  4186.         EndM
  4187.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4188.         IMPORT_CFM_FUNCTION InvalidateSpriteWorld
  4189.     ENDIF
  4190.  
  4191. ;
  4192. ; pascal OSErr SpriteWorldHitTest(SpriteWorld theSpriteWorld, long flags, Point loc, Sprite *spriteHit)
  4193. ;
  4194.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4195.         Macro
  4196.         _SpriteWorldHitTest
  4197.             move.w              #$0246,D0
  4198.             dc.w                $AAAA
  4199.         EndM
  4200.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4201.         IMPORT_CFM_FUNCTION SpriteWorldHitTest
  4202.     ENDIF
  4203.  
  4204. ;
  4205. ; pascal OSErr SpriteHitTest(Sprite theSprite, long flags, Point loc, Boolean *wasHit)
  4206. ;
  4207.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4208.         Macro
  4209.         _SpriteHitTest
  4210.             move.w              #$0247,D0
  4211.             dc.w                $AAAA
  4212.         EndM
  4213.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4214.         IMPORT_CFM_FUNCTION SpriteHitTest
  4215.     ENDIF
  4216.  
  4217. ;
  4218. ; pascal void DisposeAllSprites(SpriteWorld theSpriteWorld)
  4219. ;
  4220.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4221.         Macro
  4222.         _DisposeAllSprites
  4223.             move.w              #$023F,D0
  4224.             dc.w                $AAAA
  4225.         EndM
  4226.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4227.         IMPORT_CFM_FUNCTION DisposeAllSprites
  4228.     ENDIF
  4229.  
  4230. ;
  4231. ; pascal OSErr NewSprite(Sprite *newSprite, SpriteWorld itsSpriteWorld, ImageDescriptionHandle idh, Ptr imageDataPtr, MatrixRecord *matrix, Boolean visible, short layer)
  4232. ;
  4233.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4234.         Macro
  4235.         _NewSprite
  4236.             move.w              #$0240,D0
  4237.             dc.w                $AAAA
  4238.         EndM
  4239.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4240.         IMPORT_CFM_FUNCTION NewSprite
  4241.     ENDIF
  4242.  
  4243. ;
  4244. ; pascal void DisposeSprite(Sprite theSprite)
  4245. ;
  4246.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4247.         Macro
  4248.         _DisposeSprite
  4249.             move.w              #$0241,D0
  4250.             dc.w                $AAAA
  4251.         EndM
  4252.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4253.         IMPORT_CFM_FUNCTION DisposeSprite
  4254.     ENDIF
  4255.  
  4256. ;
  4257. ; pascal void InvalidateSprite(Sprite theSprite)
  4258. ;
  4259.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4260.         Macro
  4261.         _InvalidateSprite
  4262.             move.w              #$0242,D0
  4263.             dc.w                $AAAA
  4264.         EndM
  4265.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4266.         IMPORT_CFM_FUNCTION InvalidateSprite
  4267.     ENDIF
  4268.  
  4269. ;
  4270. ; pascal OSErr SetSpriteProperty(Sprite theSprite, long propertyType, void *propertyValue)
  4271. ;
  4272.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4273.         Macro
  4274.         _SetSpriteProperty
  4275.             move.w              #$0243,D0
  4276.             dc.w                $AAAA
  4277.         EndM
  4278.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4279.         IMPORT_CFM_FUNCTION SetSpriteProperty
  4280.     ENDIF
  4281.  
  4282. ;
  4283. ; pascal OSErr GetSpriteProperty(Sprite theSprite, long propertyType, void *propertyValue)
  4284. ;
  4285.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4286.         Macro
  4287.         _GetSpriteProperty
  4288.             move.w              #$0244,D0
  4289.             dc.w                $AAAA
  4290.         EndM
  4291.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4292.         IMPORT_CFM_FUNCTION GetSpriteProperty
  4293.     ENDIF
  4294.  
  4295. ; *****
  4296. ;    QT Atom Data Support
  4297. ;****
  4298.  
  4299.  
  4300. kParentAtomIsContainer            EQU        0
  4301. ;  create and dispose QTAtomContainer objects
  4302.  
  4303. ;
  4304. ; pascal OSErr QTNewAtomContainer(QTAtomContainer *atomData)
  4305. ;
  4306.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4307.         Macro
  4308.         _QTNewAtomContainer
  4309.             move.w              #$020C,D0
  4310.             dc.w                $AAAA
  4311.         EndM
  4312.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4313.         IMPORT_CFM_FUNCTION QTNewAtomContainer
  4314.     ENDIF
  4315.  
  4316. ;
  4317. ; pascal OSErr QTDisposeAtomContainer(QTAtomContainer atomData)
  4318. ;
  4319.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4320.         Macro
  4321.         _QTDisposeAtomContainer
  4322.             move.w              #$020D,D0
  4323.             dc.w                $AAAA
  4324.         EndM
  4325.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4326.         IMPORT_CFM_FUNCTION QTDisposeAtomContainer
  4327.     ENDIF
  4328.  
  4329. ;  locating nested atoms within QTAtomContainer container
  4330. ;
  4331. ; pascal QTAtomType QTGetNextChildType(QTAtomContainer container, QTAtom parentAtom, QTAtomType currentChildType)
  4332. ;
  4333.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4334.         Macro
  4335.         _QTGetNextChildType
  4336.             move.w              #$020E,D0
  4337.             dc.w                $AAAA
  4338.         EndM
  4339.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4340.         IMPORT_CFM_FUNCTION QTGetNextChildType
  4341.     ENDIF
  4342.  
  4343. ;
  4344. ; pascal short QTCountChildrenOfType(QTAtomContainer container, QTAtom parentAtom, QTAtomType childType)
  4345. ;
  4346.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4347.         Macro
  4348.         _QTCountChildrenOfType
  4349.             move.w              #$020F,D0
  4350.             dc.w                $AAAA
  4351.         EndM
  4352.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4353.         IMPORT_CFM_FUNCTION QTCountChildrenOfType
  4354.     ENDIF
  4355.  
  4356. ;
  4357. ; pascal QTAtom QTFindChildByIndex(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, short index, QTAtomID *id)
  4358. ;
  4359.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4360.         Macro
  4361.         _QTFindChildByIndex
  4362.             move.w              #$0210,D0
  4363.             dc.w                $AAAA
  4364.         EndM
  4365.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4366.         IMPORT_CFM_FUNCTION QTFindChildByIndex
  4367.     ENDIF
  4368.  
  4369. ;
  4370. ; pascal QTAtom QTFindChildByID(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, QTAtomID id, short *index)
  4371. ;
  4372.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4373.         Macro
  4374.         _QTFindChildByID
  4375.             move.w              #$021D,D0
  4376.             dc.w                $AAAA
  4377.         EndM
  4378.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4379.         IMPORT_CFM_FUNCTION QTFindChildByID
  4380.     ENDIF
  4381.  
  4382. ;
  4383. ; pascal OSErr QTNextChildAnyType(QTAtomContainer container, QTAtom parentAtom, QTAtom currentChild, QTAtom *nextChild)
  4384. ;
  4385.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4386.         Macro
  4387.         _QTNextChildAnyType
  4388.             move.w              #$0200,D0
  4389.             dc.w                $AAAA
  4390.         EndM
  4391.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4392.         IMPORT_CFM_FUNCTION QTNextChildAnyType
  4393.     ENDIF
  4394.  
  4395. ;  set a leaf atom's data
  4396. ;
  4397. ; pascal OSErr QTSetAtomData(QTAtomContainer container, QTAtom atom, long dataSize, void *atomData)
  4398. ;
  4399.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4400.         Macro
  4401.         _QTSetAtomData
  4402.             move.w              #$0211,D0
  4403.             dc.w                $AAAA
  4404.         EndM
  4405.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4406.         IMPORT_CFM_FUNCTION QTSetAtomData
  4407.     ENDIF
  4408.  
  4409. ;  extracting data
  4410. ;
  4411. ; pascal OSErr QTCopyAtomDataToHandle(QTAtomContainer container, QTAtom atom, Handle targetHandle)
  4412. ;
  4413.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4414.         Macro
  4415.         _QTCopyAtomDataToHandle
  4416.             move.w              #$0212,D0
  4417.             dc.w                $AAAA
  4418.         EndM
  4419.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4420.         IMPORT_CFM_FUNCTION QTCopyAtomDataToHandle
  4421.     ENDIF
  4422.  
  4423. ;
  4424. ; pascal OSErr QTCopyAtomDataToPtr(QTAtomContainer container, QTAtom atom, Boolean sizeOrLessOK, long size, void *targetPtr, long *actualSize)
  4425. ;
  4426.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4427.         Macro
  4428.         _QTCopyAtomDataToPtr
  4429.             move.w              #$0213,D0
  4430.             dc.w                $AAAA
  4431.         EndM
  4432.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4433.         IMPORT_CFM_FUNCTION QTCopyAtomDataToPtr
  4434.     ENDIF
  4435.  
  4436. ;
  4437. ; pascal OSErr QTGetAtomTypeAndID(QTAtomContainer container, QTAtom atom, QTAtomType *atomType, QTAtomID *id)
  4438. ;
  4439.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4440.         Macro
  4441.         _QTGetAtomTypeAndID
  4442.             move.w              #$0232,D0
  4443.             dc.w                $AAAA
  4444.         EndM
  4445.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4446.         IMPORT_CFM_FUNCTION QTGetAtomTypeAndID
  4447.     ENDIF
  4448.  
  4449. ;  extract a copy of an atom and all of it's children, caller disposes
  4450. ;
  4451. ; pascal OSErr QTCopyAtom(QTAtomContainer container, QTAtom atom, QTAtomContainer *targetContainer)
  4452. ;
  4453.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4454.         Macro
  4455.         _QTCopyAtom
  4456.             move.w              #$0214,D0
  4457.             dc.w                $AAAA
  4458.         EndM
  4459.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4460.         IMPORT_CFM_FUNCTION QTCopyAtom
  4461.     ENDIF
  4462.  
  4463. ;  obtaining direct reference to atom data
  4464. ;
  4465. ; pascal OSErr QTLockContainer(QTAtomContainer container)
  4466. ;
  4467.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4468.         Macro
  4469.         _QTLockContainer
  4470.             move.w              #$0215,D0
  4471.             dc.w                $AAAA
  4472.         EndM
  4473.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4474.         IMPORT_CFM_FUNCTION QTLockContainer
  4475.     ENDIF
  4476.  
  4477. ;
  4478. ; pascal OSErr QTGetAtomDataPtr(QTAtomContainer container, QTAtom atom, long *dataSize, Ptr *atomData)
  4479. ;
  4480.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4481.         Macro
  4482.         _QTGetAtomDataPtr
  4483.             move.w              #$0216,D0
  4484.             dc.w                $AAAA
  4485.         EndM
  4486.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4487.         IMPORT_CFM_FUNCTION QTGetAtomDataPtr
  4488.     ENDIF
  4489.  
  4490. ;
  4491. ; pascal OSErr QTUnlockContainer(QTAtomContainer container)
  4492. ;
  4493.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4494.         Macro
  4495.         _QTUnlockContainer
  4496.             move.w              #$0217,D0
  4497.             dc.w                $AAAA
  4498.         EndM
  4499.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4500.         IMPORT_CFM_FUNCTION QTUnlockContainer
  4501.     ENDIF
  4502.  
  4503.  
  4504. ;   building QTAtomContainer trees
  4505. ;   creates and inserts new atom at specified index, existing atoms at or after index are moved toward end of list
  4506. ;   used for Top-Down tree creation
  4507.  
  4508.  
  4509. ;
  4510. ; pascal OSErr QTInsertChild(QTAtomContainer container, QTAtom parentAtom, QTAtomType atomType, QTAtomID id, short index, long dataSize, void *data, QTAtom *newAtom)
  4511. ;
  4512.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4513.         Macro
  4514.         _QTInsertChild
  4515.             move.w              #$0218,D0
  4516.             dc.w                $AAAA
  4517.         EndM
  4518.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4519.         IMPORT_CFM_FUNCTION QTInsertChild
  4520.     ENDIF
  4521.  
  4522. ;  inserts children from childrenContainer as children of parentAtom
  4523. ;
  4524. ; pascal OSErr QTInsertChildren(QTAtomContainer container, QTAtom parentAtom, QTAtomContainer childrenContainer)
  4525. ;
  4526.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4527.         Macro
  4528.         _QTInsertChildren
  4529.             move.w              #$0219,D0
  4530.             dc.w                $AAAA
  4531.         EndM
  4532.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4533.         IMPORT_CFM_FUNCTION QTInsertChildren
  4534.     ENDIF
  4535.  
  4536. ;  destruction
  4537. ;
  4538. ; pascal OSErr QTRemoveAtom(QTAtomContainer container, QTAtom atom)
  4539. ;
  4540.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4541.         Macro
  4542.         _QTRemoveAtom
  4543.             move.w              #$021A,D0
  4544.             dc.w                $AAAA
  4545.         EndM
  4546.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4547.         IMPORT_CFM_FUNCTION QTRemoveAtom
  4548.     ENDIF
  4549.  
  4550. ;
  4551. ; pascal OSErr QTRemoveChildren(QTAtomContainer container, QTAtom atom)
  4552. ;
  4553.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4554.         Macro
  4555.         _QTRemoveChildren
  4556.             move.w              #$021B,D0
  4557.             dc.w                $AAAA
  4558.         EndM
  4559.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4560.         IMPORT_CFM_FUNCTION QTRemoveChildren
  4561.     ENDIF
  4562.  
  4563. ;  replacement must be same type as target
  4564. ;
  4565. ; pascal OSErr QTReplaceAtom(QTAtomContainer targetContainer, QTAtom targetAtom, QTAtomContainer replacementContainer, QTAtom replacementAtom)
  4566. ;
  4567.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4568.         Macro
  4569.         _QTReplaceAtom
  4570.             move.w              #$021C,D0
  4571.             dc.w                $AAAA
  4572.         EndM
  4573.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4574.         IMPORT_CFM_FUNCTION QTReplaceAtom
  4575.     ENDIF
  4576.  
  4577. ;
  4578. ; pascal OSErr QTSwapAtoms(QTAtomContainer container, QTAtom atom1, QTAtom atom2)
  4579. ;
  4580.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4581.         Macro
  4582.         _QTSwapAtoms
  4583.             move.w              #$01FF,D0
  4584.             dc.w                $AAAA
  4585.         EndM
  4586.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4587.         IMPORT_CFM_FUNCTION QTSwapAtoms
  4588.     ENDIF
  4589.  
  4590. ;
  4591. ; pascal OSErr QTSetAtomID(QTAtomContainer container, QTAtom atom, QTAtomID newID)
  4592. ;
  4593.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4594.         Macro
  4595.         _QTSetAtomID
  4596.             move.w              #$0231,D0
  4597.             dc.w                $AAAA
  4598.         EndM
  4599.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4600.         IMPORT_CFM_FUNCTION QTSetAtomID
  4601.     ENDIF
  4602.  
  4603. ;
  4604. ; pascal OSErr SetMediaPropertyAtom(Media theMedia, QTAtomContainer propertyAtom)
  4605. ;
  4606.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4607.         Macro
  4608.         _SetMediaPropertyAtom
  4609.             move.w              #$022E,D0
  4610.             dc.w                $AAAA
  4611.         EndM
  4612.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4613.         IMPORT_CFM_FUNCTION SetMediaPropertyAtom
  4614.     ENDIF
  4615.  
  4616. ;
  4617. ; pascal OSErr GetMediaPropertyAtom(Media theMedia, QTAtomContainer *propertyAtom)
  4618. ;
  4619.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4620.         Macro
  4621.         _GetMediaPropertyAtom
  4622.             move.w              #$022F,D0
  4623.             dc.w                $AAAA
  4624.         EndM
  4625.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4626.         IMPORT_CFM_FUNCTION GetMediaPropertyAtom
  4627.     ENDIF
  4628.  
  4629.  
  4630. ; *****
  4631. ;    QT International Text Atom Support
  4632. ;****
  4633.  
  4634.  
  4635. kITextRemoveEverythingBut        EQU        $00
  4636. kITextRemoveLeaveSuggestedAlternate EQU    $02
  4637.  
  4638. kITextAtomType                    EQU        'itxt'
  4639. kITextStringAtomType            EQU        'text'
  4640. ;
  4641. ; pascal OSErr ITextAddString(QTAtomContainer container, QTAtom parentAtom, RegionCode theRegionCode, ConstStr255Param theString)
  4642. ;
  4643.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4644.         Macro
  4645.         _ITextAddString
  4646.             move.w              #$027A,D0
  4647.             dc.w                $AAAA
  4648.         EndM
  4649.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4650.         IMPORT_CFM_FUNCTION ITextAddString
  4651.     ENDIF
  4652.  
  4653. ;
  4654. ; pascal OSErr ITextRemoveString(QTAtomContainer container, QTAtom parentAtom, RegionCode theRegionCode, long flags)
  4655. ;
  4656.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4657.         Macro
  4658.         _ITextRemoveString
  4659.             move.w              #$027B,D0
  4660.             dc.w                $AAAA
  4661.         EndM
  4662.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4663.         IMPORT_CFM_FUNCTION ITextRemoveString
  4664.     ENDIF
  4665.  
  4666. ;
  4667. ; pascal OSErr ITextGetString(QTAtomContainer container, QTAtom parentAtom, RegionCode requestedRegion, RegionCode *foundRegion, StringPtr theString)
  4668. ;
  4669.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4670.         Macro
  4671.         _ITextGetString
  4672.             move.w              #$027C,D0
  4673.             dc.w                $AAAA
  4674.         EndM
  4675.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4676.         IMPORT_CFM_FUNCTION ITextGetString
  4677.     ENDIF
  4678.  
  4679.  
  4680. ; *************************
  4681. ;* modifier track types
  4682. ;*************************
  4683.  
  4684.  
  4685. kTrackModifierInput                EQU        $696E                ; is really 'in'
  4686. kTrackModifierType                EQU        $7479                ; is really 'ty'
  4687. kTrackModifierReference            EQU        'ssrc'
  4688. kTrackModifierObjectID            EQU        'obid'
  4689. kTrackModifierInputName            EQU        'name'
  4690.  
  4691. kInputMapSubInputID                EQU        'subi'
  4692.  
  4693. kTrackModifierTypeMatrix        EQU        1
  4694. kTrackModifierTypeClip            EQU        2
  4695. kTrackModifierTypeGraphicsMode    EQU        5
  4696. kTrackModifierTypeVolume        EQU        3
  4697. kTrackModifierTypeBalance        EQU        4
  4698. kTrackModifierTypeImage            EQU        'vide'                ; was kTrackModifierTypeSpriteImage
  4699. kTrackModifierObjectMatrix        EQU        6
  4700. kTrackModifierObjectGraphicsMode EQU    7
  4701. kTrackModifierType3d4x4Matrix    EQU        8
  4702. kTrackModifierCameraData        EQU        9
  4703. kTrackModifierSoundLocalizationData EQU    10
  4704. ModifierTrackGraphicsModeRecord RECORD 0
  4705. graphicsMode             ds.l    1                ; offset: $0 (0)
  4706. opColor                     ds        RGBColor        ; offset: $4 (4)
  4707. sizeof                     EQU *                    ; size:   $A (10)
  4708.                         ENDR
  4709.  
  4710. ; *************************
  4711. ;* tween track types
  4712. ;*************************
  4713.  
  4714.  
  4715. kTweenTypeShort                    EQU        1
  4716. kTweenTypeLong                    EQU        2
  4717. kTweenTypeFixed                    EQU        3
  4718. kTweenTypePoint                    EQU        4
  4719. kTweenTypeQDRect                EQU        5
  4720. kTweenTypeQDRegion                EQU        6
  4721. kTweenTypeMatrix                EQU        7
  4722. kTweenTypeRGBColor                EQU        8
  4723. kTweenTypeGraphicsModeWithRGBColor EQU    9
  4724. kTweenType3dScale                EQU        '3sca'
  4725. kTweenType3dTranslate            EQU        '3tra'
  4726. kTweenType3dRotate                EQU        '3rot'
  4727. kTweenType3dRotateAboutPoint    EQU        '3rap'
  4728. kTweenType3dRotateAboutAxis        EQU        '3rax'
  4729. kTweenType3dQuaternion            EQU        '3qua'
  4730. kTweenType3dMatrix                EQU        '3mat'
  4731. kTweenType3dCameraData            EQU        '3cam'
  4732. kTweenType3dSoundLocalizationData EQU    '3slc'
  4733.  
  4734. kTweenEntry                        EQU        'twen'
  4735. kTweenData                        EQU        'data'
  4736. kTweenType                        EQU        'twnt'
  4737. kTweenStartOffset                EQU        'twst'
  4738. kTweenDuration                    EQU        'twdu'
  4739. kTween3dInitialCondition        EQU        'icnd'
  4740. kTweenInterpolationStyle        EQU        'isty'
  4741. kTweenRegionData                EQU        'qdrg'
  4742. kTweenPictureData                EQU        'PICT'
  4743.  
  4744.  
  4745.  
  4746.  
  4747. internalComponentErr            EQU        -2070
  4748. notImplementedMusicOSErr        EQU        -2071
  4749. cantSendToSynthesizerOSErr        EQU        -2072
  4750. cantReceiveFromSynthesizerOSErr    EQU        -2073
  4751. illegalVoiceAllocationOSErr        EQU        -2074
  4752. illegalPartOSErr                EQU        -2075
  4753. illegalChannelOSErr                EQU        -2076
  4754. illegalKnobOSErr                EQU        -2077
  4755. illegalKnobValueOSErr            EQU        -2078
  4756. illegalInstrumentOSErr            EQU        -2079
  4757. illegalControllerOSErr            EQU        -2080
  4758. midiManagerAbsentOSErr            EQU        -2081
  4759. synthesizerNotRespondingOSErr    EQU        -2082
  4760. synthesizerOSErr                EQU        -2083
  4761. illegalNoteChannelOSErr            EQU        -2084
  4762. noteChannelNotAllocatedOSErr    EQU        -2085
  4763. tunePlayerFullOSErr                EQU        -2086
  4764. tuneParseOSErr                    EQU        -2087
  4765.  
  4766.  
  4767. ; *************************
  4768. ;* Video Media routines
  4769. ;*************************
  4770.  
  4771.  
  4772.  
  4773.  
  4774. videoFlagDontLeanAhead            EQU        $00000001
  4775.  
  4776.  
  4777.  
  4778. ;  use these two routines at your own peril
  4779. ;
  4780. ; pascal ComponentResult VideoMediaResetStatistics(MediaHandler mh)
  4781. ;
  4782.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4783.         Macro
  4784.         _VideoMediaResetStatistics
  4785.             move.l              #$00000105,-(sp)
  4786.             moveq               #0,D0
  4787.             dc.w                $A82A
  4788.         EndM
  4789.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4790.         IMPORT_CFM_FUNCTION VideoMediaResetStatistics
  4791.     ENDIF
  4792.  
  4793. ;
  4794. ; pascal ComponentResult VideoMediaGetStatistics(MediaHandler mh)
  4795. ;
  4796.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4797.         Macro
  4798.         _VideoMediaGetStatistics
  4799.             move.l              #$00000106,-(sp)
  4800.             moveq               #0,D0
  4801.             dc.w                $A82A
  4802.         EndM
  4803.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4804.         IMPORT_CFM_FUNCTION VideoMediaGetStatistics
  4805.     ENDIF
  4806.  
  4807.  
  4808.  
  4809.  
  4810.  
  4811. ; *************************
  4812. ;* Text Media routines
  4813. ;*************************
  4814.  
  4815.  
  4816.  
  4817.  
  4818. ;  Return displayFlags for TextProc 
  4819.  
  4820. txtProcDefaultDisplay            EQU        0                    ;    Use the media's default
  4821. txtProcDontDisplay                EQU        1                    ;    Don't display the text
  4822. txtProcDoDisplay                EQU        2                    ;    Do display the text
  4823. ;
  4824. ; pascal ComponentResult TextMediaSetTextProc(MediaHandler mh, TextMediaUPP TextProc, long refcon)
  4825. ;
  4826.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4827.         Macro
  4828.         _TextMediaSetTextProc
  4829.             move.l              #$00080101,-(sp)
  4830.             moveq               #0,D0
  4831.             dc.w                $A82A
  4832.         EndM
  4833.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4834.         IMPORT_CFM_FUNCTION TextMediaSetTextProc
  4835.     ENDIF
  4836.  
  4837. ;
  4838. ; pascal ComponentResult TextMediaAddTextSample(MediaHandler mh, Ptr text, unsigned long size, short fontNumber, short fontSize, Style textFace, RGBColor *textColor, RGBColor *backColor, short textJustification, Rect *textBox, long displayFlags, TimeValue scrollDelay, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4839. ;
  4840.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4841.         Macro
  4842.         _TextMediaAddTextSample
  4843.             move.l              #$00340102,-(sp)
  4844.             moveq               #0,D0
  4845.             dc.w                $A82A
  4846.         EndM
  4847.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4848.         IMPORT_CFM_FUNCTION TextMediaAddTextSample
  4849.     ENDIF
  4850.  
  4851. ;
  4852. ; pascal ComponentResult TextMediaAddTESample(MediaHandler mh, TEHandle hTE, RGBColor *backColor, short textJustification, Rect *textBox, long displayFlags, TimeValue scrollDelay, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4853. ;
  4854.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4855.         Macro
  4856.         _TextMediaAddTESample
  4857.             move.l              #$00260103,-(sp)
  4858.             moveq               #0,D0
  4859.             dc.w                $A82A
  4860.         EndM
  4861.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4862.         IMPORT_CFM_FUNCTION TextMediaAddTESample
  4863.     ENDIF
  4864.  
  4865. ;
  4866. ; pascal ComponentResult TextMediaAddHiliteSample(MediaHandler mh, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor, TimeValue duration, TimeValue *sampleTime)
  4867. ;
  4868.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4869.         Macro
  4870.         _TextMediaAddHiliteSample
  4871.             move.l              #$00100104,-(sp)
  4872.             moveq               #0,D0
  4873.             dc.w                $A82A
  4874.         EndM
  4875.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4876.         IMPORT_CFM_FUNCTION TextMediaAddHiliteSample
  4877.     ENDIF
  4878.  
  4879.  
  4880. findTextEdgeOK                    EQU        $01                    ; Okay to find text at specified sample time
  4881. findTextCaseSensitive            EQU        $02                    ; Case sensitive search
  4882. findTextReverseSearch            EQU        $04                    ; Search from sampleTime backwards
  4883. findTextWrapAround                EQU        $08                    ; Wrap search when beginning or end of movie is hit
  4884. findTextUseOffset                EQU        $10                    ; Begin search at the given character offset into sample rather than edge
  4885. ;
  4886. ; pascal ComponentResult TextMediaFindNextText(MediaHandler mh, Ptr text, long size, short findFlags, TimeValue startTime, TimeValue *foundTime, TimeValue *foundDuration, long *offset)
  4887. ;
  4888.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4889.         Macro
  4890.         _TextMediaFindNextText
  4891.             move.l              #$001A0105,-(sp)
  4892.             moveq               #0,D0
  4893.             dc.w                $A82A
  4894.         EndM
  4895.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4896.         IMPORT_CFM_FUNCTION TextMediaFindNextText
  4897.     ENDIF
  4898.  
  4899. ;
  4900. ; pascal ComponentResult TextMediaHiliteTextSample(MediaHandler mh, TimeValue sampleTime, short hiliteStart, short hiliteEnd, RGBColor *rgbHiliteColor)
  4901. ;
  4902.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4903.         Macro
  4904.         _TextMediaHiliteTextSample
  4905.             move.l              #$000C0106,-(sp)
  4906.             moveq               #0,D0
  4907.             dc.w                $A82A
  4908.         EndM
  4909.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4910.         IMPORT_CFM_FUNCTION TextMediaHiliteTextSample
  4911.     ENDIF
  4912.  
  4913.  
  4914. dropShadowOffsetType            EQU        'drpo'
  4915. dropShadowTranslucencyType        EQU        'drpt'
  4916. ;
  4917. ; pascal ComponentResult TextMediaSetTextSampleData(MediaHandler mh, void *data, OSType dataType)
  4918. ;
  4919.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4920.         Macro
  4921.         _TextMediaSetTextSampleData
  4922.             move.l              #$00080107,-(sp)
  4923.             moveq               #0,D0
  4924.             dc.w                $A82A
  4925.         EndM
  4926.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4927.         IMPORT_CFM_FUNCTION TextMediaSetTextSampleData
  4928.     ENDIF
  4929.  
  4930.  
  4931.  
  4932.  
  4933. ; *************************
  4934. ;* Sprite Media routines
  4935. ;*************************
  4936.  
  4937. ;  flags for HitTestSpriteMedia 
  4938.  
  4939. spriteHitTestBounds                EQU        $00000001            ;    point must only be within sprite's bounding box
  4940. spriteHitTestImage                EQU        $00000002            ;  point must be within the shape of the sprite's image
  4941. ;  atom types for sprite media 
  4942.  
  4943. kSpriteAtomType                    EQU        'sprt'
  4944. kSpriteImagesContainerAtomType    EQU        'imct'
  4945. kSpriteImageAtomType            EQU        'imag'
  4946. kSpriteImageDataAtomType        EQU        'imda'
  4947. kSpriteSharedDataAtomType        EQU        'dflt'
  4948. kSpriteNameAtomType                EQU        'name'
  4949. ;
  4950. ; pascal ComponentResult SpriteMediaSetProperty(MediaHandler mh, short spriteIndex, long propertyType, void *propertyValue)
  4951. ;
  4952.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4953.         Macro
  4954.         _SpriteMediaSetProperty
  4955.             move.l              #$000A0101,-(sp)
  4956.             moveq               #0,D0
  4957.             dc.w                $A82A
  4958.         EndM
  4959.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4960.         IMPORT_CFM_FUNCTION SpriteMediaSetProperty
  4961.     ENDIF
  4962.  
  4963. ;
  4964. ; pascal ComponentResult SpriteMediaGetProperty(MediaHandler mh, short spriteIndex, long propertyType, void *propertyValue)
  4965. ;
  4966.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4967.         Macro
  4968.         _SpriteMediaGetProperty
  4969.             move.l              #$000A0102,-(sp)
  4970.             moveq               #0,D0
  4971.             dc.w                $A82A
  4972.         EndM
  4973.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4974.         IMPORT_CFM_FUNCTION SpriteMediaGetProperty
  4975.     ENDIF
  4976.  
  4977. ;
  4978. ; pascal ComponentResult SpriteMediaHitTestSprites(MediaHandler mh, long flags, Point loc, short *spriteHitIndex)
  4979. ;
  4980.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4981.         Macro
  4982.         _SpriteMediaHitTestSprites
  4983.             move.l              #$000C0103,-(sp)
  4984.             moveq               #0,D0
  4985.             dc.w                $A82A
  4986.         EndM
  4987.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  4988.         IMPORT_CFM_FUNCTION SpriteMediaHitTestSprites
  4989.     ENDIF
  4990.  
  4991. ;
  4992. ; pascal ComponentResult SpriteMediaCountSprites(MediaHandler mh, short *numSprites)
  4993. ;
  4994.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  4995.         Macro
  4996.         _SpriteMediaCountSprites
  4997.             move.l              #$00040104,-(sp)
  4998.             moveq               #0,D0
  4999.             dc.w                $A82A
  5000.         EndM
  5001.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5002.         IMPORT_CFM_FUNCTION SpriteMediaCountSprites
  5003.     ENDIF
  5004.  
  5005. ;
  5006. ; pascal ComponentResult SpriteMediaCountImages(MediaHandler mh, short *numImages)
  5007. ;
  5008.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5009.         Macro
  5010.         _SpriteMediaCountImages
  5011.             move.l              #$00040105,-(sp)
  5012.             moveq               #0,D0
  5013.             dc.w                $A82A
  5014.         EndM
  5015.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5016.         IMPORT_CFM_FUNCTION SpriteMediaCountImages
  5017.     ENDIF
  5018.  
  5019. ;
  5020. ; pascal ComponentResult SpriteMediaGetIndImageDescription(MediaHandler mh, short imageIndex, ImageDescriptionHandle imageDescription)
  5021. ;
  5022.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5023.         Macro
  5024.         _SpriteMediaGetIndImageDescription
  5025.             move.l              #$00060106,-(sp)
  5026.             moveq               #0,D0
  5027.             dc.w                $A82A
  5028.         EndM
  5029.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5030.         IMPORT_CFM_FUNCTION SpriteMediaGetIndImageDescription
  5031.     ENDIF
  5032.  
  5033. ;
  5034. ; pascal ComponentResult SpriteMediaGetDisplayedSampleNumber(MediaHandler mh, long *sampleNum)
  5035. ;
  5036.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5037.         Macro
  5038.         _SpriteMediaGetDisplayedSampleNumber
  5039.             move.l              #$00040107,-(sp)
  5040.             moveq               #0,D0
  5041.             dc.w                $A82A
  5042.         EndM
  5043.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5044.         IMPORT_CFM_FUNCTION SpriteMediaGetDisplayedSampleNumber
  5045.     ENDIF
  5046.  
  5047.  
  5048. ; *************************
  5049. ;* 3D Media routines
  5050. ;*************************
  5051.  
  5052. ;
  5053. ; pascal ComponentResult Media3DGetNamedObjectList(MediaHandler mh, QTAtomContainer *objectList)
  5054. ;
  5055.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5056.         Macro
  5057.         _Media3DGetNamedObjectList
  5058.             move.l              #$00040101,-(sp)
  5059.             moveq               #0,D0
  5060.             dc.w                $A82A
  5061.         EndM
  5062.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5063.         IMPORT_CFM_FUNCTION Media3DGetNamedObjectList
  5064.     ENDIF
  5065.  
  5066. ;
  5067. ; pascal ComponentResult Media3DGetRendererList(MediaHandler mh, QTAtomContainer *rendererList)
  5068. ;
  5069.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5070.         Macro
  5071.         _Media3DGetRendererList
  5072.             move.l              #$00040102,-(sp)
  5073.             moveq               #0,D0
  5074.             dc.w                $A82A
  5075.         EndM
  5076.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5077.         IMPORT_CFM_FUNCTION Media3DGetRendererList
  5078.     ENDIF
  5079.  
  5080.  
  5081.  
  5082. ; ****************************************
  5083. ;*                                        *
  5084. ;*      M O V I E   C O N T R O L L E R        *
  5085. ;*                                        *
  5086. ;***************************************
  5087.  
  5088.  
  5089. MovieControllerComponentType    EQU        'play'
  5090.  
  5091. ; typedef ComponentInstance             MovieController
  5092.  
  5093.  
  5094. mcActionIdle                    EQU        1                    ; no param
  5095. mcActionDraw                    EQU        2                    ; param is WindowPtr
  5096. mcActionActivate                EQU        3                    ; no param
  5097. mcActionDeactivate                EQU        4                    ; no param
  5098. mcActionMouseDown                EQU        5                    ; param is pointer to EventRecord
  5099. mcActionKey                        EQU        6                    ; param is pointer to EventRecord
  5100. mcActionPlay                    EQU        8                    ; param is Fixed, play rate
  5101. mcActionGoToTime                EQU        12                    ; param is TimeRecord
  5102. mcActionSetVolume                EQU        14                    ; param is a short
  5103. mcActionGetVolume                EQU        15                    ; param is pointer to a short
  5104. mcActionStep                    EQU        18                    ; param is number of steps (short)
  5105. mcActionSetLooping                EQU        21                    ; param is Boolean
  5106. mcActionGetLooping                EQU        22                    ; param is pointer to a Boolean
  5107. mcActionSetLoopIsPalindrome        EQU        23                    ; param is Boolean
  5108. mcActionGetLoopIsPalindrome        EQU        24                    ; param is pointer to a Boolean
  5109. mcActionSetGrowBoxBounds        EQU        25                    ; param is a Rect
  5110. mcActionControllerSizeChanged    EQU        26                    ; no param
  5111. mcActionSetSelectionBegin        EQU        29                    ; param is TimeRecord
  5112. mcActionSetSelectionDuration    EQU        30                    ; param is TimeRecord, action only taken on set-duration
  5113. mcActionSetKeysEnabled            EQU        32                    ; param is Boolean
  5114. mcActionGetKeysEnabled            EQU        33                    ; param is pointer to Boolean
  5115. mcActionSetPlaySelection        EQU        34                    ; param is Boolean
  5116. mcActionGetPlaySelection        EQU        35                    ; param is pointer to Boolean
  5117. mcActionSetUseBadge                EQU        36                    ; param is Boolean
  5118. mcActionGetUseBadge                EQU        37                    ; param is pointer to Boolean
  5119. mcActionSetFlags                EQU        38                    ; param is long of flags
  5120. mcActionGetFlags                EQU        39                    ; param is pointer to a long of flags
  5121. mcActionSetPlayEveryFrame        EQU        40                    ; param is Boolean
  5122. mcActionGetPlayEveryFrame        EQU        41                    ; param is pointer to Boolean
  5123. mcActionGetPlayRate                EQU        42                    ; param is pointer to Fixed
  5124. mcActionShowBalloon                EQU        43                    ; param is a pointer to a boolean. set to false to stop balloon
  5125. mcActionBadgeClick                EQU        44                    ; param is pointer to Boolean. set to false to ignore click
  5126. mcActionMovieClick                EQU        45                    ; param is pointer to event record. change “what” to nullEvt to kill click
  5127. mcActionSuspend                    EQU        46                    ; no param
  5128. mcActionResume                    EQU        47                    ; no param
  5129. mcActionSetControllerKeysEnabled EQU    48                    ; param is Boolean
  5130. mcActionGetTimeSliderRect        EQU        49                    ; param is pointer to rect
  5131. mcActionMovieEdited                EQU        50                    ; no param
  5132. mcActionGetDragEnabled            EQU        51                    ; param is pointer to Boolean
  5133. mcActionSetDragEnabled            EQU        52                    ; param is Boolean
  5134. mcActionGetSelectionBegin        EQU        53                    ; param is TimeRecord
  5135. mcActionGetSelectionDuration    EQU        54                    ; param is TimeRecord
  5136. mcActionPrerollAndPlay            EQU        55                    ; param is Fixed, play rate
  5137. mcActionGetCursorSettingEnabled    EQU        56                    ; param is pointer to Boolean
  5138. mcActionSetCursorSettingEnabled    EQU        57                    ; param is Boolean
  5139. mcActionSetColorTable            EQU        58                    ; param is CTabHandle
  5140. ; typedef short                         mcAction
  5141.  
  5142.  
  5143. mcFlagSuppressMovieFrame        EQU        $01
  5144. mcFlagSuppressStepButtons        EQU        $02
  5145. mcFlagSuppressSpeakerButton        EQU        $04
  5146. mcFlagsUseWindowPalette            EQU        $08
  5147. mcFlagsDontInvalidate            EQU        $10
  5148.  
  5149.  
  5150. mcPositionDontInvalidate        EQU        $20
  5151. ; typedef unsigned long                 mcFlags
  5152.  
  5153. ;    menu related stuff
  5154. ;
  5155.  
  5156.  
  5157. mcInfoUndoAvailable                EQU        $01
  5158. mcInfoCutAvailable                EQU        $02
  5159. mcInfoCopyAvailable                EQU        $04
  5160. mcInfoPasteAvailable            EQU        $08
  5161. mcInfoClearAvailable            EQU        $10
  5162. mcInfoHasSound                    EQU        $20
  5163. mcInfoIsPlaying                    EQU        $40
  5164. mcInfoIsLooping                    EQU        $80
  5165. mcInfoIsInPalindrome            EQU        $0100
  5166. mcInfoEditingEnabled            EQU        $0200
  5167. mcInfoMovieIsInteractive        EQU        $0400
  5168. ;  menu item codes
  5169.  
  5170. mcMenuUndo                        EQU        1
  5171. mcMenuCut                        EQU        3
  5172. mcMenuCopy                        EQU        4
  5173. mcMenuPaste                        EQU        5
  5174. mcMenuClear                        EQU        6
  5175.  
  5176.  
  5177.  
  5178. ;  target management 
  5179. ;
  5180. ; pascal ComponentResult MCSetMovie(MovieController mc, Movie theMovie, WindowPtr movieWindow, Point where)
  5181. ;
  5182.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5183.         Macro
  5184.         _MCSetMovie
  5185.             move.l              #$000C0002,-(sp)
  5186.             moveq               #0,D0
  5187.             dc.w                $A82A
  5188.         EndM
  5189.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5190.         IMPORT_CFM_FUNCTION MCSetMovie
  5191.     ENDIF
  5192.  
  5193. ;
  5194. ; pascal Movie MCGetIndMovie(MovieController mc, short index)
  5195. ;
  5196.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5197.         Macro
  5198.         _MCGetIndMovie
  5199.             move.l              #$00020005,-(sp)
  5200.             moveq               #0,D0
  5201.             dc.w                $A82A
  5202.         EndM
  5203.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5204.         IMPORT_CFM_FUNCTION MCGetIndMovie
  5205.     ENDIF
  5206.  
  5207.  
  5208. ;
  5209. ; pascal ComponentResult MCRemoveAllMovies(MovieController mc)
  5210. ;
  5211.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5212.         Macro
  5213.         _MCRemoveAllMovies
  5214.             move.l              #$00000006,-(sp)
  5215.             moveq               #0,D0
  5216.             dc.w                $A82A
  5217.         EndM
  5218.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5219.         IMPORT_CFM_FUNCTION MCRemoveAllMovies
  5220.     ENDIF
  5221.  
  5222. ;
  5223. ; pascal ComponentResult MCRemoveAMovie(MovieController mc, Movie m)
  5224. ;
  5225.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5226.         Macro
  5227.         _MCRemoveAMovie
  5228.             move.l              #$00040003,-(sp)
  5229.             moveq               #0,D0
  5230.             dc.w                $A82A
  5231.         EndM
  5232.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5233.         IMPORT_CFM_FUNCTION MCRemoveAMovie
  5234.     ENDIF
  5235.  
  5236. ;
  5237. ; pascal ComponentResult MCRemoveMovie(MovieController mc)
  5238. ;
  5239.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5240.         Macro
  5241.         _MCRemoveMovie
  5242.             move.l              #$00000006,-(sp)
  5243.             moveq               #0,D0
  5244.             dc.w                $A82A
  5245.         EndM
  5246.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5247.         IMPORT_CFM_FUNCTION MCRemoveMovie
  5248.     ENDIF
  5249.  
  5250. ;  event handling etc. 
  5251. ;
  5252. ; pascal ComponentResult MCIsPlayerEvent(MovieController mc, const EventRecord *e)
  5253. ;
  5254.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5255.         Macro
  5256.         _MCIsPlayerEvent
  5257.             move.l              #$00040007,-(sp)
  5258.             moveq               #0,D0
  5259.             dc.w                $A82A
  5260.         EndM
  5261.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5262.         IMPORT_CFM_FUNCTION MCIsPlayerEvent
  5263.     ENDIF
  5264.  
  5265. ;  obsolete. use MCSetActionFilterWithRefCon instead. 
  5266. ;
  5267. ; pascal ComponentResult MCSetActionFilter(MovieController mc, MCActionFilterUPP blob)
  5268. ;
  5269.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5270.         Macro
  5271.         _MCSetActionFilter
  5272.             move.l              #$00040008,-(sp)
  5273.             moveq               #0,D0
  5274.             dc.w                $A82A
  5275.         EndM
  5276.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5277.         IMPORT_CFM_FUNCTION MCSetActionFilter
  5278.     ENDIF
  5279.  
  5280. ;    proc is of the form:
  5281. ;        Boolean userPlayerFilter(MovieController mc, short *action, void *params) =
  5282. ;    proc returns TRUE if it handles the action, FALSE if not
  5283. ;    action is passed as a VAR so that it could be changed by filter
  5284. ;    this is consistent with the current dialog manager stuff
  5285. ;    params is any potential parameters that go with the action
  5286. ;        such as set playback rate to xxx.
  5287. ;
  5288.  
  5289. ;
  5290. ; pascal ComponentResult MCDoAction(MovieController mc, short action, void *params)
  5291. ;
  5292.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5293.         Macro
  5294.         _MCDoAction
  5295.             move.l              #$00060009,-(sp)
  5296.             moveq               #0,D0
  5297.             dc.w                $A82A
  5298.         EndM
  5299.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5300.         IMPORT_CFM_FUNCTION MCDoAction
  5301.     ENDIF
  5302.  
  5303. ;  state type things 
  5304. ;
  5305. ; pascal ComponentResult MCSetControllerAttached(MovieController mc, Boolean attach)
  5306. ;
  5307.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5308.         Macro
  5309.         _MCSetControllerAttached
  5310.             move.l              #$0002000A,-(sp)
  5311.             moveq               #0,D0
  5312.             dc.w                $A82A
  5313.         EndM
  5314.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5315.         IMPORT_CFM_FUNCTION MCSetControllerAttached
  5316.     ENDIF
  5317.  
  5318. ;
  5319. ; pascal ComponentResult MCIsControllerAttached(MovieController mc)
  5320. ;
  5321.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5322.         Macro
  5323.         _MCIsControllerAttached
  5324.             move.l              #$0000000B,-(sp)
  5325.             moveq               #0,D0
  5326.             dc.w                $A82A
  5327.         EndM
  5328.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5329.         IMPORT_CFM_FUNCTION MCIsControllerAttached
  5330.     ENDIF
  5331.  
  5332. ;
  5333. ; pascal ComponentResult MCSetControllerPort(MovieController mc, CGrafPtr gp)
  5334. ;
  5335.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5336.         Macro
  5337.         _MCSetControllerPort
  5338.             move.l              #$0004000C,-(sp)
  5339.             moveq               #0,D0
  5340.             dc.w                $A82A
  5341.         EndM
  5342.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5343.         IMPORT_CFM_FUNCTION MCSetControllerPort
  5344.     ENDIF
  5345.  
  5346. ;
  5347. ; pascal CGrafPtr MCGetControllerPort(MovieController mc)
  5348. ;
  5349.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5350.         Macro
  5351.         _MCGetControllerPort
  5352.             move.l              #$0000000D,-(sp)
  5353.             moveq               #0,D0
  5354.             dc.w                $A82A
  5355.         EndM
  5356.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5357.         IMPORT_CFM_FUNCTION MCGetControllerPort
  5358.     ENDIF
  5359.  
  5360. ;
  5361. ; pascal ComponentResult MCSetVisible(MovieController mc, Boolean visible)
  5362. ;
  5363.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5364.         Macro
  5365.         _MCSetVisible
  5366.             move.l              #$0002000E,-(sp)
  5367.             moveq               #0,D0
  5368.             dc.w                $A82A
  5369.         EndM
  5370.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5371.         IMPORT_CFM_FUNCTION MCSetVisible
  5372.     ENDIF
  5373.  
  5374. ;
  5375. ; pascal ComponentResult MCGetVisible(MovieController mc)
  5376. ;
  5377.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5378.         Macro
  5379.         _MCGetVisible
  5380.             move.l              #$0000000F,-(sp)
  5381.             moveq               #0,D0
  5382.             dc.w                $A82A
  5383.         EndM
  5384.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5385.         IMPORT_CFM_FUNCTION MCGetVisible
  5386.     ENDIF
  5387.  
  5388. ;
  5389. ; pascal ComponentResult MCGetControllerBoundsRect(MovieController mc, Rect *bounds)
  5390. ;
  5391.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5392.         Macro
  5393.         _MCGetControllerBoundsRect
  5394.             move.l              #$00040010,-(sp)
  5395.             moveq               #0,D0
  5396.             dc.w                $A82A
  5397.         EndM
  5398.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5399.         IMPORT_CFM_FUNCTION MCGetControllerBoundsRect
  5400.     ENDIF
  5401.  
  5402. ;
  5403. ; pascal ComponentResult MCSetControllerBoundsRect(MovieController mc, const Rect *bounds)
  5404. ;
  5405.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5406.         Macro
  5407.         _MCSetControllerBoundsRect
  5408.             move.l              #$00040011,-(sp)
  5409.             moveq               #0,D0
  5410.             dc.w                $A82A
  5411.         EndM
  5412.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5413.         IMPORT_CFM_FUNCTION MCSetControllerBoundsRect
  5414.     ENDIF
  5415.  
  5416. ;
  5417. ; pascal RgnHandle MCGetControllerBoundsRgn(MovieController mc)
  5418. ;
  5419.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5420.         Macro
  5421.         _MCGetControllerBoundsRgn
  5422.             move.l              #$00000012,-(sp)
  5423.             moveq               #0,D0
  5424.             dc.w                $A82A
  5425.         EndM
  5426.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5427.         IMPORT_CFM_FUNCTION MCGetControllerBoundsRgn
  5428.     ENDIF
  5429.  
  5430. ;
  5431. ; pascal RgnHandle MCGetWindowRgn(MovieController mc, WindowPtr w)
  5432. ;
  5433.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5434.         Macro
  5435.         _MCGetWindowRgn
  5436.             move.l              #$00040013,-(sp)
  5437.             moveq               #0,D0
  5438.             dc.w                $A82A
  5439.         EndM
  5440.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5441.         IMPORT_CFM_FUNCTION MCGetWindowRgn
  5442.     ENDIF
  5443.  
  5444.  
  5445. ;  other stuff 
  5446. ;
  5447. ; pascal ComponentResult MCMovieChanged(MovieController mc, Movie m)
  5448. ;
  5449.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5450.         Macro
  5451.         _MCMovieChanged
  5452.             move.l              #$00040014,-(sp)
  5453.             moveq               #0,D0
  5454.             dc.w                $A82A
  5455.         EndM
  5456.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5457.         IMPORT_CFM_FUNCTION MCMovieChanged
  5458.     ENDIF
  5459.  
  5460.  
  5461. ;    called when the app has changed thing about the movie (like bounding rect) or rate. So that we
  5462. ;        can update our graphical (and internal) state accordingly.
  5463. ;
  5464.  
  5465. ;
  5466. ; pascal ComponentResult MCSetDuration(MovieController mc, TimeValue duration)
  5467. ;
  5468.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5469.         Macro
  5470.         _MCSetDuration
  5471.             move.l              #$00040015,-(sp)
  5472.             moveq               #0,D0
  5473.             dc.w                $A82A
  5474.         EndM
  5475.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5476.         IMPORT_CFM_FUNCTION MCSetDuration
  5477.     ENDIF
  5478.  
  5479. ;    duration to use for time slider -- will be reset next time MCMovieChanged is called
  5480. ;        or MCSetMovie is called
  5481. ;
  5482.  
  5483. ;
  5484. ; pascal TimeValue MCGetCurrentTime(MovieController mc, TimeScale *scale)
  5485. ;
  5486.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5487.         Macro
  5488.         _MCGetCurrentTime
  5489.             move.l              #$00040016,-(sp)
  5490.             moveq               #0,D0
  5491.             dc.w                $A82A
  5492.         EndM
  5493.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5494.         IMPORT_CFM_FUNCTION MCGetCurrentTime
  5495.     ENDIF
  5496.  
  5497. ;    returns the time value and the time scale it is on. if there are no movies, the
  5498. ;        time scale is passed back as 0. scale is an optional parameter
  5499. ;
  5500. ;
  5501.  
  5502. ;
  5503. ; pascal ComponentResult MCNewAttachedController(MovieController mc, Movie theMovie, WindowPtr w, Point where)
  5504. ;
  5505.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5506.         Macro
  5507.         _MCNewAttachedController
  5508.             move.l              #$000C0017,-(sp)
  5509.             moveq               #0,D0
  5510.             dc.w                $A82A
  5511.         EndM
  5512.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5513.         IMPORT_CFM_FUNCTION MCNewAttachedController
  5514.     ENDIF
  5515.  
  5516. ;    makes theMovie the only movie attached to the controller. makes the controller visible.
  5517. ;    the window and where parameters are passed a long to MCSetMovie and behave as
  5518. ;    described there
  5519. ;
  5520.  
  5521. ;
  5522. ; pascal ComponentResult MCDraw(MovieController mc, WindowPtr w)
  5523. ;
  5524.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5525.         Macro
  5526.         _MCDraw
  5527.             move.l              #$00040018,-(sp)
  5528.             moveq               #0,D0
  5529.             dc.w                $A82A
  5530.         EndM
  5531.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5532.         IMPORT_CFM_FUNCTION MCDraw
  5533.     ENDIF
  5534.  
  5535. ;
  5536. ; pascal ComponentResult MCActivate(MovieController mc, WindowPtr w, Boolean activate)
  5537. ;
  5538.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5539.         Macro
  5540.         _MCActivate
  5541.             move.l              #$00060019,-(sp)
  5542.             moveq               #0,D0
  5543.             dc.w                $A82A
  5544.         EndM
  5545.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5546.         IMPORT_CFM_FUNCTION MCActivate
  5547.     ENDIF
  5548.  
  5549. ;
  5550. ; pascal ComponentResult MCIdle(MovieController mc)
  5551. ;
  5552.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5553.         Macro
  5554.         _MCIdle
  5555.             move.l              #$0000001A,-(sp)
  5556.             moveq               #0,D0
  5557.             dc.w                $A82A
  5558.         EndM
  5559.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5560.         IMPORT_CFM_FUNCTION MCIdle
  5561.     ENDIF
  5562.  
  5563. ;
  5564. ; pascal ComponentResult MCKey(MovieController mc, SInt8 key, long modifiers)
  5565. ;
  5566.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5567.         Macro
  5568.         _MCKey
  5569.             move.l              #$0006001B,-(sp)
  5570.             moveq               #0,D0
  5571.             dc.w                $A82A
  5572.         EndM
  5573.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5574.         IMPORT_CFM_FUNCTION MCKey
  5575.     ENDIF
  5576.  
  5577. ;
  5578. ; pascal ComponentResult MCClick(MovieController mc, WindowPtr w, Point where, long when, long modifiers)
  5579. ;
  5580.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5581.         Macro
  5582.         _MCClick
  5583.             move.l              #$0010001C,-(sp)
  5584.             moveq               #0,D0
  5585.             dc.w                $A82A
  5586.         EndM
  5587.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5588.         IMPORT_CFM_FUNCTION MCClick
  5589.     ENDIF
  5590.  
  5591.  
  5592. ;    calls for editing
  5593. ;
  5594.  
  5595. ;
  5596. ; pascal ComponentResult MCEnableEditing(MovieController mc, Boolean enabled)
  5597. ;
  5598.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5599.         Macro
  5600.         _MCEnableEditing
  5601.             move.l              #$0002001D,-(sp)
  5602.             moveq               #0,D0
  5603.             dc.w                $A82A
  5604.         EndM
  5605.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5606.         IMPORT_CFM_FUNCTION MCEnableEditing
  5607.     ENDIF
  5608.  
  5609. ;
  5610. ; pascal long MCIsEditingEnabled(MovieController mc)
  5611. ;
  5612.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5613.         Macro
  5614.         _MCIsEditingEnabled
  5615.             move.l              #$0000001E,-(sp)
  5616.             moveq               #0,D0
  5617.             dc.w                $A82A
  5618.         EndM
  5619.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5620.         IMPORT_CFM_FUNCTION MCIsEditingEnabled
  5621.     ENDIF
  5622.  
  5623. ;
  5624. ; pascal Movie MCCopy(MovieController mc)
  5625. ;
  5626.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5627.         Macro
  5628.         _MCCopy
  5629.             move.l              #$0000001F,-(sp)
  5630.             moveq               #0,D0
  5631.             dc.w                $A82A
  5632.         EndM
  5633.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5634.         IMPORT_CFM_FUNCTION MCCopy
  5635.     ENDIF
  5636.  
  5637. ;
  5638. ; pascal Movie MCCut(MovieController mc)
  5639. ;
  5640.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5641.         Macro
  5642.         _MCCut
  5643.             move.l              #$00000020,-(sp)
  5644.             moveq               #0,D0
  5645.             dc.w                $A82A
  5646.         EndM
  5647.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5648.         IMPORT_CFM_FUNCTION MCCut
  5649.     ENDIF
  5650.  
  5651. ;
  5652. ; pascal ComponentResult MCPaste(MovieController mc, Movie srcMovie)
  5653. ;
  5654.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5655.         Macro
  5656.         _MCPaste
  5657.             move.l              #$00040021,-(sp)
  5658.             moveq               #0,D0
  5659.             dc.w                $A82A
  5660.         EndM
  5661.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5662.         IMPORT_CFM_FUNCTION MCPaste
  5663.     ENDIF
  5664.  
  5665. ;
  5666. ; pascal ComponentResult MCClear(MovieController mc)
  5667. ;
  5668.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5669.         Macro
  5670.         _MCClear
  5671.             move.l              #$00000022,-(sp)
  5672.             moveq               #0,D0
  5673.             dc.w                $A82A
  5674.         EndM
  5675.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5676.         IMPORT_CFM_FUNCTION MCClear
  5677.     ENDIF
  5678.  
  5679. ;
  5680. ; pascal ComponentResult MCUndo(MovieController mc)
  5681. ;
  5682.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5683.         Macro
  5684.         _MCUndo
  5685.             move.l              #$00000023,-(sp)
  5686.             moveq               #0,D0
  5687.             dc.w                $A82A
  5688.         EndM
  5689.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5690.         IMPORT_CFM_FUNCTION MCUndo
  5691.     ENDIF
  5692.  
  5693.  
  5694. ; *    somewhat special stuff
  5695.  
  5696. ;
  5697. ; pascal ComponentResult MCPositionController(MovieController mc, const Rect *movieRect, const Rect *controllerRect, long someFlags)
  5698. ;
  5699.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5700.         Macro
  5701.         _MCPositionController
  5702.             move.l              #$000C0024,-(sp)
  5703.             moveq               #0,D0
  5704.             dc.w                $A82A
  5705.         EndM
  5706.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5707.         IMPORT_CFM_FUNCTION MCPositionController
  5708.     ENDIF
  5709.  
  5710.  
  5711. ;
  5712. ; pascal ComponentResult MCGetControllerInfo(MovieController mc, long *someFlags)
  5713. ;
  5714.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5715.         Macro
  5716.         _MCGetControllerInfo
  5717.             move.l              #$00040025,-(sp)
  5718.             moveq               #0,D0
  5719.             dc.w                $A82A
  5720.         EndM
  5721.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5722.         IMPORT_CFM_FUNCTION MCGetControllerInfo
  5723.     ENDIF
  5724.  
  5725.  
  5726.  
  5727. ;
  5728. ; pascal ComponentResult MCSetClip(MovieController mc, RgnHandle theClip, RgnHandle movieClip)
  5729. ;
  5730.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5731.         Macro
  5732.         _MCSetClip
  5733.             move.l              #$00080028,-(sp)
  5734.             moveq               #0,D0
  5735.             dc.w                $A82A
  5736.         EndM
  5737.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5738.         IMPORT_CFM_FUNCTION MCSetClip
  5739.     ENDIF
  5740.  
  5741. ;
  5742. ; pascal ComponentResult MCGetClip(MovieController mc, RgnHandle *theClip, RgnHandle *movieClip)
  5743. ;
  5744.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5745.         Macro
  5746.         _MCGetClip
  5747.             move.l              #$00080029,-(sp)
  5748.             moveq               #0,D0
  5749.             dc.w                $A82A
  5750.         EndM
  5751.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5752.         IMPORT_CFM_FUNCTION MCGetClip
  5753.     ENDIF
  5754.  
  5755.  
  5756. ;
  5757. ; pascal ComponentResult MCDrawBadge(MovieController mc, RgnHandle movieRgn, RgnHandle *badgeRgn)
  5758. ;
  5759.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5760.         Macro
  5761.         _MCDrawBadge
  5762.             move.l              #$0008002A,-(sp)
  5763.             moveq               #0,D0
  5764.             dc.w                $A82A
  5765.         EndM
  5766.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5767.         IMPORT_CFM_FUNCTION MCDrawBadge
  5768.     ENDIF
  5769.  
  5770. ;
  5771. ; pascal ComponentResult MCSetUpEditMenu(MovieController mc, long modifiers, MenuHandle mh)
  5772. ;
  5773.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5774.         Macro
  5775.         _MCSetUpEditMenu
  5776.             move.l              #$0008002B,-(sp)
  5777.             moveq               #0,D0
  5778.             dc.w                $A82A
  5779.         EndM
  5780.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5781.         IMPORT_CFM_FUNCTION MCSetUpEditMenu
  5782.     ENDIF
  5783.  
  5784. ;
  5785. ; pascal ComponentResult MCGetMenuString(MovieController mc, long modifiers, short item, Str255 aString)
  5786. ;
  5787.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5788.         Macro
  5789.         _MCGetMenuString
  5790.             move.l              #$000A002C,-(sp)
  5791.             moveq               #0,D0
  5792.             dc.w                $A82A
  5793.         EndM
  5794.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5795.         IMPORT_CFM_FUNCTION MCGetMenuString
  5796.     ENDIF
  5797.  
  5798. ;
  5799. ; pascal ComponentResult MCSetActionFilterWithRefCon(MovieController mc, MCActionFilterWithRefConUPP blob, long refCon)
  5800. ;
  5801.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5802.         Macro
  5803.         _MCSetActionFilterWithRefCon
  5804.             move.l              #$0008002D,-(sp)
  5805.             moveq               #0,D0
  5806.             dc.w                $A82A
  5807.         EndM
  5808.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5809.         IMPORT_CFM_FUNCTION MCSetActionFilterWithRefCon
  5810.     ENDIF
  5811.  
  5812. ;
  5813. ; pascal ComponentResult MCPtInController(MovieController mc, Point thePt, Boolean *inController)
  5814. ;
  5815.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5816.         Macro
  5817.         _MCPtInController
  5818.             move.l              #$0008002E,-(sp)
  5819.             moveq               #0,D0
  5820.             dc.w                $A82A
  5821.         EndM
  5822.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5823.         IMPORT_CFM_FUNCTION MCPtInController
  5824.     ENDIF
  5825.  
  5826. ;
  5827. ; pascal ComponentResult MCInvalidate(MovieController mc, WindowPtr w, RgnHandle invalidRgn)
  5828. ;
  5829.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5830.         Macro
  5831.         _MCInvalidate
  5832.             move.l              #$0008002F,-(sp)
  5833.             moveq               #0,D0
  5834.             dc.w                $A82A
  5835.         EndM
  5836.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5837.         IMPORT_CFM_FUNCTION MCInvalidate
  5838.     ENDIF
  5839.  
  5840.  
  5841.  
  5842.  
  5843.  
  5844. ; ****************************************
  5845. ;*                                        *
  5846. ;*          T  I  M  E  B  A  S  E            *
  5847. ;*                                        *
  5848. ;***************************************
  5849.  
  5850. ;
  5851. ; pascal TimeBase NewTimeBase(void )
  5852. ;
  5853.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5854.         Macro
  5855.         _NewTimeBase
  5856.             move.w              #$00A5,D0
  5857.             dc.w                $AAAA
  5858.         EndM
  5859.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5860.         IMPORT_CFM_FUNCTION NewTimeBase
  5861.     ENDIF
  5862.  
  5863. ;
  5864. ; pascal void DisposeTimeBase(TimeBase tb)
  5865. ;
  5866.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5867.         Macro
  5868.         _DisposeTimeBase
  5869.             move.w              #$00B6,D0
  5870.             dc.w                $AAAA
  5871.         EndM
  5872.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5873.         IMPORT_CFM_FUNCTION DisposeTimeBase
  5874.     ENDIF
  5875.  
  5876. ;
  5877. ; pascal TimeValue GetTimeBaseTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  5878. ;
  5879.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5880.         Macro
  5881.         _GetTimeBaseTime
  5882.             move.w              #$00A6,D0
  5883.             dc.w                $AAAA
  5884.         EndM
  5885.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5886.         IMPORT_CFM_FUNCTION GetTimeBaseTime
  5887.     ENDIF
  5888.  
  5889. ;
  5890. ; pascal void SetTimeBaseTime(TimeBase tb, const TimeRecord *tr)
  5891. ;
  5892.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5893.         Macro
  5894.         _SetTimeBaseTime
  5895.             move.w              #$00A7,D0
  5896.             dc.w                $AAAA
  5897.         EndM
  5898.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5899.         IMPORT_CFM_FUNCTION SetTimeBaseTime
  5900.     ENDIF
  5901.  
  5902. ;
  5903. ; pascal void SetTimeBaseValue(TimeBase tb, TimeValue t, TimeScale s)
  5904. ;
  5905.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5906.         Macro
  5907.         _SetTimeBaseValue
  5908.             move.w              #$00A8,D0
  5909.             dc.w                $AAAA
  5910.         EndM
  5911.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5912.         IMPORT_CFM_FUNCTION SetTimeBaseValue
  5913.     ENDIF
  5914.  
  5915. ;
  5916. ; pascal Fixed GetTimeBaseRate(TimeBase tb)
  5917. ;
  5918.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5919.         Macro
  5920.         _GetTimeBaseRate
  5921.             move.w              #$00A9,D0
  5922.             dc.w                $AAAA
  5923.         EndM
  5924.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5925.         IMPORT_CFM_FUNCTION GetTimeBaseRate
  5926.     ENDIF
  5927.  
  5928. ;
  5929. ; pascal void SetTimeBaseRate(TimeBase tb, Fixed r)
  5930. ;
  5931.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5932.         Macro
  5933.         _SetTimeBaseRate
  5934.             move.w              #$00AA,D0
  5935.             dc.w                $AAAA
  5936.         EndM
  5937.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5938.         IMPORT_CFM_FUNCTION SetTimeBaseRate
  5939.     ENDIF
  5940.  
  5941. ;
  5942. ; pascal TimeValue GetTimeBaseStartTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  5943. ;
  5944.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5945.         Macro
  5946.         _GetTimeBaseStartTime
  5947.             move.w              #$00AB,D0
  5948.             dc.w                $AAAA
  5949.         EndM
  5950.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5951.         IMPORT_CFM_FUNCTION GetTimeBaseStartTime
  5952.     ENDIF
  5953.  
  5954. ;
  5955. ; pascal void SetTimeBaseStartTime(TimeBase tb, const TimeRecord *tr)
  5956. ;
  5957.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5958.         Macro
  5959.         _SetTimeBaseStartTime
  5960.             move.w              #$00AC,D0
  5961.             dc.w                $AAAA
  5962.         EndM
  5963.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5964.         IMPORT_CFM_FUNCTION SetTimeBaseStartTime
  5965.     ENDIF
  5966.  
  5967. ;
  5968. ; pascal TimeValue GetTimeBaseStopTime(TimeBase tb, TimeScale s, TimeRecord *tr)
  5969. ;
  5970.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5971.         Macro
  5972.         _GetTimeBaseStopTime
  5973.             move.w              #$00AD,D0
  5974.             dc.w                $AAAA
  5975.         EndM
  5976.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5977.         IMPORT_CFM_FUNCTION GetTimeBaseStopTime
  5978.     ENDIF
  5979.  
  5980. ;
  5981. ; pascal void SetTimeBaseStopTime(TimeBase tb, const TimeRecord *tr)
  5982. ;
  5983.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5984.         Macro
  5985.         _SetTimeBaseStopTime
  5986.             move.w              #$00AE,D0
  5987.             dc.w                $AAAA
  5988.         EndM
  5989.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  5990.         IMPORT_CFM_FUNCTION SetTimeBaseStopTime
  5991.     ENDIF
  5992.  
  5993. ;
  5994. ; pascal long GetTimeBaseFlags(TimeBase tb)
  5995. ;
  5996.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  5997.         Macro
  5998.         _GetTimeBaseFlags
  5999.             move.w              #$00B1,D0
  6000.             dc.w                $AAAA
  6001.         EndM
  6002.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6003.         IMPORT_CFM_FUNCTION GetTimeBaseFlags
  6004.     ENDIF
  6005.  
  6006. ;
  6007. ; pascal void SetTimeBaseFlags(TimeBase tb, long timeBaseFlags)
  6008. ;
  6009.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6010.         Macro
  6011.         _SetTimeBaseFlags
  6012.             move.w              #$00B2,D0
  6013.             dc.w                $AAAA
  6014.         EndM
  6015.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6016.         IMPORT_CFM_FUNCTION SetTimeBaseFlags
  6017.     ENDIF
  6018.  
  6019. ;
  6020. ; pascal void SetTimeBaseMasterTimeBase(TimeBase slave, TimeBase master, const TimeRecord *slaveZero)
  6021. ;
  6022.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6023.         Macro
  6024.         _SetTimeBaseMasterTimeBase
  6025.             move.w              #$00B4,D0
  6026.             dc.w                $AAAA
  6027.         EndM
  6028.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6029.         IMPORT_CFM_FUNCTION SetTimeBaseMasterTimeBase
  6030.     ENDIF
  6031.  
  6032. ;
  6033. ; pascal TimeBase GetTimeBaseMasterTimeBase(TimeBase tb)
  6034. ;
  6035.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6036.         Macro
  6037.         _GetTimeBaseMasterTimeBase
  6038.             move.w              #$00AF,D0
  6039.             dc.w                $AAAA
  6040.         EndM
  6041.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6042.         IMPORT_CFM_FUNCTION GetTimeBaseMasterTimeBase
  6043.     ENDIF
  6044.  
  6045. ;
  6046. ; pascal void SetTimeBaseMasterClock(TimeBase slave, Component clockMeister, const TimeRecord *slaveZero)
  6047. ;
  6048.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6049.         Macro
  6050.         _SetTimeBaseMasterClock
  6051.             move.w              #$00B3,D0
  6052.             dc.w                $AAAA
  6053.         EndM
  6054.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6055.         IMPORT_CFM_FUNCTION SetTimeBaseMasterClock
  6056.     ENDIF
  6057.  
  6058. ;
  6059. ; pascal ComponentInstance GetTimeBaseMasterClock(TimeBase tb)
  6060. ;
  6061.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6062.         Macro
  6063.         _GetTimeBaseMasterClock
  6064.             move.w              #$00B0,D0
  6065.             dc.w                $AAAA
  6066.         EndM
  6067.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6068.         IMPORT_CFM_FUNCTION GetTimeBaseMasterClock
  6069.     ENDIF
  6070.  
  6071. ;
  6072. ; pascal void ConvertTime(TimeRecord *inout, TimeBase newBase)
  6073. ;
  6074.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6075.         Macro
  6076.         _ConvertTime
  6077.             move.w              #$00B5,D0
  6078.             dc.w                $AAAA
  6079.         EndM
  6080.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6081.         IMPORT_CFM_FUNCTION ConvertTime
  6082.     ENDIF
  6083.  
  6084. ;
  6085. ; pascal void ConvertTimeScale(TimeRecord *inout, TimeScale newScale)
  6086. ;
  6087.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6088.         Macro
  6089.         _ConvertTimeScale
  6090.             move.w              #$00B7,D0
  6091.             dc.w                $AAAA
  6092.         EndM
  6093.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6094.         IMPORT_CFM_FUNCTION ConvertTimeScale
  6095.     ENDIF
  6096.  
  6097. ;
  6098. ; pascal void AddTime(TimeRecord *dst, const TimeRecord *src)
  6099. ;
  6100.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6101.         Macro
  6102.         _AddTime
  6103.             move.w              #$010C,D0
  6104.             dc.w                $AAAA
  6105.         EndM
  6106.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6107.         IMPORT_CFM_FUNCTION AddTime
  6108.     ENDIF
  6109.  
  6110. ;
  6111. ; pascal void SubtractTime(TimeRecord *dst, const TimeRecord *src)
  6112. ;
  6113.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6114.         Macro
  6115.         _SubtractTime
  6116.             move.w              #$010D,D0
  6117.             dc.w                $AAAA
  6118.         EndM
  6119.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6120.         IMPORT_CFM_FUNCTION SubtractTime
  6121.     ENDIF
  6122.  
  6123. ;
  6124. ; pascal long GetTimeBaseStatus(TimeBase tb, TimeRecord *unpinnedTime)
  6125. ;
  6126.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6127.         Macro
  6128.         _GetTimeBaseStatus
  6129.             move.w              #$010B,D0
  6130.             dc.w                $AAAA
  6131.         EndM
  6132.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6133.         IMPORT_CFM_FUNCTION GetTimeBaseStatus
  6134.     ENDIF
  6135.  
  6136. ;
  6137. ; pascal void SetTimeBaseZero(TimeBase tb, TimeRecord *zero)
  6138. ;
  6139.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6140.         Macro
  6141.         _SetTimeBaseZero
  6142.             move.w              #$0128,D0
  6143.             dc.w                $AAAA
  6144.         EndM
  6145.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6146.         IMPORT_CFM_FUNCTION SetTimeBaseZero
  6147.     ENDIF
  6148.  
  6149. ;
  6150. ; pascal Fixed GetTimeBaseEffectiveRate(TimeBase tb)
  6151. ;
  6152.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6153.         Macro
  6154.         _GetTimeBaseEffectiveRate
  6155.             move.w              #$0124,D0
  6156.             dc.w                $AAAA
  6157.         EndM
  6158.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6159.         IMPORT_CFM_FUNCTION GetTimeBaseEffectiveRate
  6160.     ENDIF
  6161.  
  6162.  
  6163. ; ****************************************
  6164. ;*                                        *
  6165. ;*          C  A  L  L  B  A  C  K             *
  6166. ;*                                        *
  6167. ;***************************************
  6168.  
  6169. ;
  6170. ; pascal QTCallBack NewCallBack(TimeBase tb, short cbType)
  6171. ;
  6172.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6173.         Macro
  6174.         _NewCallBack
  6175.             move.w              #$00EB,D0
  6176.             dc.w                $AAAA
  6177.         EndM
  6178.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6179.         IMPORT_CFM_FUNCTION NewCallBack
  6180.     ENDIF
  6181.  
  6182. ;
  6183. ; pascal void DisposeCallBack(QTCallBack cb)
  6184. ;
  6185.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6186.         Macro
  6187.         _DisposeCallBack
  6188.             move.w              #$00EC,D0
  6189.             dc.w                $AAAA
  6190.         EndM
  6191.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6192.         IMPORT_CFM_FUNCTION DisposeCallBack
  6193.     ENDIF
  6194.  
  6195. ;
  6196. ; pascal short GetCallBackType(QTCallBack cb)
  6197. ;
  6198.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6199.         Macro
  6200.         _GetCallBackType
  6201.             move.w              #$00ED,D0
  6202.             dc.w                $AAAA
  6203.         EndM
  6204.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6205.         IMPORT_CFM_FUNCTION GetCallBackType
  6206.     ENDIF
  6207.  
  6208. ;
  6209. ; pascal TimeBase GetCallBackTimeBase(QTCallBack cb)
  6210. ;
  6211.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6212.         Macro
  6213.         _GetCallBackTimeBase
  6214.             move.w              #$00EE,D0
  6215.             dc.w                $AAAA
  6216.         EndM
  6217.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6218.         IMPORT_CFM_FUNCTION GetCallBackTimeBase
  6219.     ENDIF
  6220.  
  6221. ;
  6222. ; pascal OSErr CallMeWhen(QTCallBack cb, QTCallBackUPP callBackProc, long refCon, long param1, long param2, long param3)
  6223. ;
  6224.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6225.         Macro
  6226.         _CallMeWhen
  6227.             move.w              #$00B8,D0
  6228.             dc.w                $AAAA
  6229.         EndM
  6230.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6231.         IMPORT_CFM_FUNCTION CallMeWhen
  6232.     ENDIF
  6233.  
  6234. ;
  6235. ; pascal void CancelCallBack(QTCallBack cb)
  6236. ;
  6237.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6238.         Macro
  6239.         _CancelCallBack
  6240.             move.w              #$00B9,D0
  6241.             dc.w                $AAAA
  6242.         EndM
  6243.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6244.         IMPORT_CFM_FUNCTION CancelCallBack
  6245.     ENDIF
  6246.  
  6247.  
  6248. ; ****************************************
  6249. ;*                                        *
  6250. ;*          C L O C K   C A L L B A C K      *
  6251. ;*                S U P P O R T              *
  6252. ;*                                        *
  6253. ;***************************************
  6254.  
  6255. ;
  6256. ; pascal OSErr AddCallBackToTimeBase(QTCallBack cb)
  6257. ;
  6258.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6259.         Macro
  6260.         _AddCallBackToTimeBase
  6261.             move.w              #$0129,D0
  6262.             dc.w                $AAAA
  6263.         EndM
  6264.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6265.         IMPORT_CFM_FUNCTION AddCallBackToTimeBase
  6266.     ENDIF
  6267.  
  6268. ;
  6269. ; pascal OSErr RemoveCallBackFromTimeBase(QTCallBack cb)
  6270. ;
  6271.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6272.         Macro
  6273.         _RemoveCallBackFromTimeBase
  6274.             move.w              #$012A,D0
  6275.             dc.w                $AAAA
  6276.         EndM
  6277.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6278.         IMPORT_CFM_FUNCTION RemoveCallBackFromTimeBase
  6279.     ENDIF
  6280.  
  6281. ;
  6282. ; pascal QTCallBack GetFirstCallBack(TimeBase tb)
  6283. ;
  6284.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6285.         Macro
  6286.         _GetFirstCallBack
  6287.             move.w              #$012B,D0
  6288.             dc.w                $AAAA
  6289.         EndM
  6290.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6291.         IMPORT_CFM_FUNCTION GetFirstCallBack
  6292.     ENDIF
  6293.  
  6294. ;
  6295. ; pascal QTCallBack GetNextCallBack(QTCallBack cb)
  6296. ;
  6297.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6298.         Macro
  6299.         _GetNextCallBack
  6300.             move.w              #$012C,D0
  6301.             dc.w                $AAAA
  6302.         EndM
  6303.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6304.         IMPORT_CFM_FUNCTION GetNextCallBack
  6305.     ENDIF
  6306.  
  6307. ;
  6308. ; pascal void ExecuteCallBack(QTCallBack cb)
  6309. ;
  6310.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6311.         Macro
  6312.         _ExecuteCallBack
  6313.             move.w              #$012D,D0
  6314.             dc.w                $AAAA
  6315.         EndM
  6316.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6317.         IMPORT_CFM_FUNCTION ExecuteCallBack
  6318.     ENDIF
  6319.  
  6320. ; ****************************************
  6321. ;*                                        *
  6322. ;*          S Y N C    T A S K S              *
  6323. ;*                S U P P O R T              *
  6324. ;*                                        *
  6325. ;***************************************
  6326.  
  6327. ;
  6328. ; pascal OSErr QueueSyncTask(QTSyncTaskPtr task)
  6329. ;
  6330.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6331.         Macro
  6332.         _QueueSyncTask
  6333.             move.w              #$0203,D0
  6334.             dc.w                $AAAA
  6335.         EndM
  6336.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6337.         IMPORT_CFM_FUNCTION QueueSyncTask
  6338.     ENDIF
  6339.  
  6340. ;
  6341. ; pascal OSErr DequeueSyncTask(QTSyncTaskPtr qElem)
  6342. ;
  6343.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  6344.         Macro
  6345.         _DequeueSyncTask
  6346.             move.w              #$0204,D0
  6347.             dc.w                $AAAA
  6348.         EndM
  6349.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  6350.         IMPORT_CFM_FUNCTION DequeueSyncTask
  6351.     ENDIF
  6352.  
  6353.  
  6354.  
  6355. ;  UPP call backs 
  6356.  
  6357.  
  6358.     ENDIF ; __MOVIES__ 
  6359.  
  6360.